@thetradeengineorg1/snova-shell-module 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/README.md +24 -0
  2. package/bundles/thetradeengineorg1-snova-shell-module.umd.js +13896 -0
  3. package/bundles/thetradeengineorg1-snova-shell-module.umd.js.map +1 -0
  4. package/esm2015/lib/globaldependencies/components/componentbase.js +538 -0
  5. package/esm2015/lib/globaldependencies/constants/feature-ids.js +449 -0
  6. package/esm2015/lib/globaldependencies/constants/localstorage-properties.js +38 -0
  7. package/esm2015/lib/globaldependencies/helpers/dom.helper.js +70 -0
  8. package/esm2015/lib/globaldependencies/helpers/fontawesome-icons.js +144 -0
  9. package/esm2015/lib/globaldependencies/helpers/moment-utc-date-adapter.js +37 -0
  10. package/esm2015/lib/globaldependencies/helpers/window.helper.js +32 -0
  11. package/esm2015/lib/globaldependencies/intercepter/jwt.interceptor.js +40 -0
  12. package/esm2015/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.js +36 -0
  13. package/esm2015/lib/globaldependencies/pipes/highLightText.pipe.js +24 -0
  14. package/esm2015/lib/globaldependencies/pipes/orderby-pipe.js +24 -0
  15. package/esm2015/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.js +22 -0
  16. package/esm2015/lib/globaldependencies/pipes/sanitize.pipe.js +24 -0
  17. package/esm2015/lib/globaldependencies/pipes/softlabels.pipes.js +346 -0
  18. package/esm2015/lib/globaldependencies/pipes/utctolocaltime.pipe.js +23 -0
  19. package/esm2015/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.js +25 -0
  20. package/esm2015/lib/globaldependencies/pipes/workflowstatus.pipes.js +27 -0
  21. package/esm2015/lib/shell-components/components/Payments/account.component.js +50 -0
  22. package/esm2015/lib/shell-components/components/Payments/company-information.js +262 -0
  23. package/esm2015/lib/shell-components/components/Payments/company-plans.component.js +138 -0
  24. package/esm2015/lib/shell-components/components/Payments/document.component.js +57 -0
  25. package/esm2015/lib/shell-components/components/Payments/payment-method.component.js +32 -0
  26. package/esm2015/lib/shell-components/components/Payments/product-service.component.js +143 -0
  27. package/esm2015/lib/shell-components/components/Payments/purchase-more-licenses.js +152 -0
  28. package/esm2015/lib/shell-components/components/Payments/transactions.component.js +60 -0
  29. package/esm2015/lib/shell-components/components/admin-layout/admin-layout.component.js +250 -0
  30. package/esm2015/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.js +89 -0
  31. package/esm2015/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.js +90 -0
  32. package/esm2015/lib/shell-components/components/export-import-configuration/export-configuration.component.js +357 -0
  33. package/esm2015/lib/shell-components/components/feed-time/feed-time-dialog.component.js +85 -0
  34. package/esm2015/lib/shell-components/components/feed-time/feed-time.component.js +83 -0
  35. package/esm2015/lib/shell-components/components/header-side/header-side.component.js +1642 -0
  36. package/esm2015/lib/shell-components/components/header-top/header-top.component.js +93 -0
  37. package/esm2015/lib/shell-components/components/lives/lives-welcome-page.js +26 -0
  38. package/esm2015/lib/shell-components/components/menu/menu.component.js +2478 -0
  39. package/esm2015/lib/shell-components/components/menu/searchTask.enum.js +10 -0
  40. package/esm2015/lib/shell-components/components/notifications/announcement-dialog.component.js +73 -0
  41. package/esm2015/lib/shell-components/components/notifications/notifications.component.js +449 -0
  42. package/esm2015/lib/shell-components/components/sidebar-top/sidebar-top.component.js +33 -0
  43. package/esm2015/lib/shell-components/components/sidenav/side-bar.component.js +81 -0
  44. package/esm2015/lib/shell-components/components/sidenav/sidenav.component.js +43 -0
  45. package/esm2015/lib/shell-components/components/submit-feedback/submit-feedback.component.js +71 -0
  46. package/esm2015/lib/shell-components/constants/api-urls.js +1052 -0
  47. package/esm2015/lib/shell-components/constants/available-languages.js +25 -0
  48. package/esm2015/lib/shell-components/constants/channel-names.js +38 -0
  49. package/esm2015/lib/shell-components/constants/menu-categories.js +6 -0
  50. package/esm2015/lib/shell-components/constants/notification-routes.js +6 -0
  51. package/esm2015/lib/shell-components/constants/notification-type-ids.js +42 -0
  52. package/esm2015/lib/shell-components/enum/recentSearchType.enum.js +13 -0
  53. package/esm2015/lib/shell-components/models/AppMenuItemModel.js +3 -0
  54. package/esm2015/lib/shell-components/models/AppNotification.js +17 -0
  55. package/esm2015/lib/shell-components/models/AssetAssignedNotificationModel.js +12 -0
  56. package/esm2015/lib/shell-components/models/ChannelUpdateModel.js +3 -0
  57. package/esm2015/lib/shell-components/models/EmployeeStatusModel.js +3 -0
  58. package/esm2015/lib/shell-components/models/IAdjust-screen-options.js +2 -0
  59. package/esm2015/lib/shell-components/models/IBadge.js +2 -0
  60. package/esm2015/lib/shell-components/models/IChildItem.js +2 -0
  61. package/esm2015/lib/shell-components/models/ILayout-change-options.js +2 -0
  62. package/esm2015/lib/shell-components/models/IMenuItem.js +2 -0
  63. package/esm2015/lib/shell-components/models/IlayoutConf.js +2 -0
  64. package/esm2015/lib/shell-components/models/IntroModel.js +3 -0
  65. package/esm2015/lib/shell-components/models/MessageDetails.js +3 -0
  66. package/esm2015/lib/shell-components/models/MessageTypingDetails.js +3 -0
  67. package/esm2015/lib/shell-components/models/NewProjectCreatedNotificationModel.js +10 -0
  68. package/esm2015/lib/shell-components/models/NewProjectFeatureNotificationModel.js +10 -0
  69. package/esm2015/lib/shell-components/models/NotificationsOutPutModel.js +22 -0
  70. package/esm2015/lib/shell-components/models/ProjectSearchCriteriaInputModel.js +3 -0
  71. package/esm2015/lib/shell-components/models/RecentSearchModel.js +5 -0
  72. package/esm2015/lib/shell-components/models/ReportConfigAssignedNotification.js +11 -0
  73. package/esm2015/lib/shell-components/models/ReportSubmittedNotification.js +12 -0
  74. package/esm2015/lib/shell-components/models/RoleUpdatedNotification.js +9 -0
  75. package/esm2015/lib/shell-components/models/UserStoryAssignedNotification.js +13 -0
  76. package/esm2015/lib/shell-components/models/archiveUserStoryModel.js +10 -0
  77. package/esm2015/lib/shell-components/models/companieslist.model.js +3 -0
  78. package/esm2015/lib/shell-components/models/company-model.js +7 -0
  79. package/esm2015/lib/shell-components/models/company-payment-model.js +3 -0
  80. package/esm2015/lib/shell-components/models/dragedWidget.js +3 -0
  81. package/esm2015/lib/shell-components/models/employee-List.js +3 -0
  82. package/esm2015/lib/shell-components/models/employee.js +4 -0
  83. package/esm2015/lib/shell-components/models/entityRoleFeature.js +3 -0
  84. package/esm2015/lib/shell-components/models/export-configuration-model.js +3 -0
  85. package/esm2015/lib/shell-components/models/export-data.module.js +8 -0
  86. package/esm2015/lib/shell-components/models/goalApprovedNotificationModel.js +9 -0
  87. package/esm2015/lib/shell-components/models/import-configuration-model.js +3 -0
  88. package/esm2015/lib/shell-components/models/initialStatusofUsers.js +3 -0
  89. package/esm2015/lib/shell-components/models/invoiceOutput-model.js +3 -0
  90. package/esm2015/lib/shell-components/models/leaveApplicationNotifiction.js +9 -0
  91. package/esm2015/lib/shell-components/models/multiChartsScheduling.js +11 -0
  92. package/esm2015/lib/shell-components/models/parkUserStoryInputModel.js +10 -0
  93. package/esm2015/lib/shell-components/models/project.js +3 -0
  94. package/esm2015/lib/shell-components/models/recentSearchApiModel.js +3 -0
  95. package/esm2015/lib/shell-components/models/searchCriteriaInputModelBase.js +3 -0
  96. package/esm2015/lib/shell-components/models/shellModulesInfo.js +7 -0
  97. package/esm2015/lib/shell-components/models/softlabels-model.js +7 -0
  98. package/esm2015/lib/shell-components/models/sprintReplanRequestedModel.js +9 -0
  99. package/esm2015/lib/shell-components/models/sprintStartedNotificationModel.js +9 -0
  100. package/esm2015/lib/shell-components/models/store-model.js +3 -0
  101. package/esm2015/lib/shell-components/models/store-search-model.js +4 -0
  102. package/esm2015/lib/shell-components/models/themes.model.js +3 -0
  103. package/esm2015/lib/shell-components/models/timesheetenabledisable.js +4 -0
  104. package/esm2015/lib/shell-components/models/user.js +8 -0
  105. package/esm2015/lib/shell-components/models/userStory.js +3 -0
  106. package/esm2015/lib/shell-components/models/userStoryCommentNotificationModel.js +9 -0
  107. package/esm2015/lib/shell-components/models/userStoryUpdateNotificationModel.js +9 -0
  108. package/esm2015/lib/shell-components/models/userstory-custom-fields.model.js +3 -0
  109. package/esm2015/lib/shell-components/models/validation.model.js +2 -0
  110. package/esm2015/lib/shell-components/models/widgetlist.js +6 -0
  111. package/esm2015/lib/shell-components/models/workspaceList.js +3 -0
  112. package/esm2015/lib/shell-components/services/authentication.service.js +96 -0
  113. package/esm2015/lib/shell-components/services/chat.service.js +67 -0
  114. package/esm2015/lib/shell-components/services/common-used.service.js +263 -0
  115. package/esm2015/lib/shell-components/services/feature.service.js +101 -0
  116. package/esm2015/lib/shell-components/services/google-analytics.service.js +24 -0
  117. package/esm2015/lib/shell-components/services/layout.service.js +68 -0
  118. package/esm2015/lib/shell-components/services/payment.service.js +103 -0
  119. package/esm2015/lib/shell-components/services/recentSearch.service.js +90 -0
  120. package/esm2015/lib/shell-components/services/shell.modules.service.js +24 -0
  121. package/esm2015/lib/shell-components/services/signalr.service.js +113 -0
  122. package/esm2015/lib/shell-components/services/theme.service.js +161 -0
  123. package/esm2015/lib/shell-components/shell.module.js +436 -0
  124. package/esm2015/lib/shell-components/shell.routing.js +16 -0
  125. package/esm2015/lib/shell-components/store/actions/authentication.actions.js +260 -0
  126. package/esm2015/lib/shell-components/store/actions/chat.actions.js +248 -0
  127. package/esm2015/lib/shell-components/store/actions/menuitems.actions.js +39 -0
  128. package/esm2015/lib/shell-components/store/actions/notification-validator.action.js +19 -0
  129. package/esm2015/lib/shell-components/store/actions/notifications.actions.js +74 -0
  130. package/esm2015/lib/shell-components/store/effects/authentication.effects.js +503 -0
  131. package/esm2015/lib/shell-components/store/effects/chat.effects.js +139 -0
  132. package/esm2015/lib/shell-components/store/effects/index.js +13 -0
  133. package/esm2015/lib/shell-components/store/effects/menuitems.effects.js +53 -0
  134. package/esm2015/lib/shell-components/store/effects/notification-validator.effects.js +56 -0
  135. package/esm2015/lib/shell-components/store/effects/notifications.effects.js +116 -0
  136. package/esm2015/lib/shell-components/store/reducers/authentication.reducers.js +86 -0
  137. package/esm2015/lib/shell-components/store/reducers/chat.reducers.js +68 -0
  138. package/esm2015/lib/shell-components/store/reducers/index.js +80 -0
  139. package/esm2015/lib/shell-components/store/reducers/menuitems.reducers.js +56 -0
  140. package/esm2015/lib/shell-components/store/reducers/notification-validator.reducers.js +13 -0
  141. package/esm2015/lib/shell-components/store/reducers/notifications.reducers.js +38 -0
  142. package/esm2015/public-api.js +90 -0
  143. package/esm2015/store/reducers/index.js +47 -0
  144. package/esm2015/thetradeengineorg1-snova-shell-module.js +5 -0
  145. package/fesm2015/thetradeengineorg1-snova-shell-module.js +12808 -0
  146. package/fesm2015/thetradeengineorg1-snova-shell-module.js.map +1 -0
  147. package/lib/globaldependencies/components/componentbase.d.ts +455 -0
  148. package/lib/globaldependencies/constants/feature-ids.d.ts +448 -0
  149. package/lib/globaldependencies/constants/localstorage-properties.d.ts +37 -0
  150. package/lib/globaldependencies/helpers/dom.helper.d.ts +7 -0
  151. package/lib/globaldependencies/helpers/fontawesome-icons.d.ts +1 -0
  152. package/lib/globaldependencies/helpers/moment-utc-date-adapter.d.ts +9 -0
  153. package/lib/globaldependencies/helpers/window.helper.d.ts +12 -0
  154. package/lib/globaldependencies/intercepter/jwt.interceptor.d.ts +11 -0
  155. package/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.d.ts +8 -0
  156. package/lib/globaldependencies/pipes/highLightText.pipe.d.ts +8 -0
  157. package/lib/globaldependencies/pipes/orderby-pipe.d.ts +9 -0
  158. package/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.d.ts +8 -0
  159. package/lib/globaldependencies/pipes/sanitize.pipe.d.ts +11 -0
  160. package/lib/globaldependencies/pipes/softlabels.pipes.d.ts +8 -0
  161. package/lib/globaldependencies/pipes/utctolocaltime.pipe.d.ts +8 -0
  162. package/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.d.ts +8 -0
  163. package/lib/globaldependencies/pipes/workflowstatus.pipes.d.ts +8 -0
  164. package/lib/shell-components/components/Payments/account.component.d.ts +14 -0
  165. package/lib/shell-components/components/Payments/company-information.d.ts +62 -0
  166. package/lib/shell-components/components/Payments/company-plans.component.d.ts +47 -0
  167. package/lib/shell-components/components/Payments/document.component.d.ts +20 -0
  168. package/lib/shell-components/components/Payments/payment-method.component.d.ts +15 -0
  169. package/lib/shell-components/components/Payments/product-service.component.d.ts +48 -0
  170. package/lib/shell-components/components/Payments/purchase-more-licenses.d.ts +37 -0
  171. package/lib/shell-components/components/Payments/transactions.component.d.ts +28 -0
  172. package/lib/shell-components/components/admin-layout/admin-layout.component.d.ts +67 -0
  173. package/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.d.ts +32 -0
  174. package/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.d.ts +32 -0
  175. package/lib/shell-components/components/export-import-configuration/export-configuration.component.d.ts +60 -0
  176. package/lib/shell-components/components/feed-time/feed-time-dialog.component.d.ts +33 -0
  177. package/lib/shell-components/components/feed-time/feed-time.component.d.ts +27 -0
  178. package/lib/shell-components/components/header-side/header-side.component.d.ts +216 -0
  179. package/lib/shell-components/components/header-top/header-top.component.d.ts +40 -0
  180. package/lib/shell-components/components/lives/lives-welcome-page.d.ts +14 -0
  181. package/lib/shell-components/components/menu/menu.component.d.ts +220 -0
  182. package/lib/shell-components/components/menu/searchTask.enum.d.ts +8 -0
  183. package/lib/shell-components/components/notifications/announcement-dialog.component.d.ts +27 -0
  184. package/lib/shell-components/components/notifications/notifications.component.d.ts +53 -0
  185. package/lib/shell-components/components/sidebar-top/sidebar-top.component.d.ts +10 -0
  186. package/lib/shell-components/components/sidenav/side-bar.component.d.ts +23 -0
  187. package/lib/shell-components/components/sidenav/sidenav.component.d.ts +17 -0
  188. package/lib/shell-components/components/submit-feedback/submit-feedback.component.d.ts +25 -0
  189. package/lib/shell-components/constants/api-urls.d.ts +1051 -0
  190. package/lib/shell-components/constants/available-languages.d.ts +7 -0
  191. package/lib/shell-components/constants/channel-names.d.ts +37 -0
  192. package/lib/shell-components/constants/menu-categories.d.ts +5 -0
  193. package/lib/shell-components/constants/notification-routes.d.ts +5 -0
  194. package/lib/shell-components/constants/notification-type-ids.d.ts +41 -0
  195. package/lib/shell-components/enum/recentSearchType.enum.d.ts +11 -0
  196. package/lib/shell-components/models/AppMenuItemModel.d.ts +12 -0
  197. package/lib/shell-components/models/AppNotification.d.ts +12 -0
  198. package/lib/shell-components/models/AssetAssignedNotificationModel.d.ts +10 -0
  199. package/lib/shell-components/models/ChannelUpdateModel.d.ts +47 -0
  200. package/lib/shell-components/models/EmployeeStatusModel.d.ts +11 -0
  201. package/lib/shell-components/models/IAdjust-screen-options.d.ts +4 -0
  202. package/lib/shell-components/models/IBadge.d.ts +4 -0
  203. package/lib/shell-components/models/IChildItem.d.ts +7 -0
  204. package/lib/shell-components/models/ILayout-change-options.d.ts +4 -0
  205. package/lib/shell-components/models/IMenuItem.d.ts +14 -0
  206. package/lib/shell-components/models/IlayoutConf.d.ts +10 -0
  207. package/lib/shell-components/models/IntroModel.d.ts +3 -0
  208. package/lib/shell-components/models/MessageDetails.d.ts +55 -0
  209. package/lib/shell-components/models/MessageTypingDetails.d.ts +9 -0
  210. package/lib/shell-components/models/NewProjectCreatedNotificationModel.d.ts +8 -0
  211. package/lib/shell-components/models/NewProjectFeatureNotificationModel.d.ts +8 -0
  212. package/lib/shell-components/models/NotificationsOutPutModel.d.ts +41 -0
  213. package/lib/shell-components/models/ProjectSearchCriteriaInputModel.d.ts +10 -0
  214. package/lib/shell-components/models/RecentSearchModel.d.ts +14 -0
  215. package/lib/shell-components/models/ReportConfigAssignedNotification.d.ts +9 -0
  216. package/lib/shell-components/models/ReportSubmittedNotification.d.ts +10 -0
  217. package/lib/shell-components/models/RoleUpdatedNotification.d.ts +7 -0
  218. package/lib/shell-components/models/UserStoryAssignedNotification.d.ts +8 -0
  219. package/lib/shell-components/models/archiveUserStoryModel.d.ts +7 -0
  220. package/lib/shell-components/models/companieslist.model.d.ts +8 -0
  221. package/lib/shell-components/models/company-model.d.ts +31 -0
  222. package/lib/shell-components/models/company-payment-model.d.ts +18 -0
  223. package/lib/shell-components/models/dragedWidget.d.ts +16 -0
  224. package/lib/shell-components/models/employee-List.d.ts +8 -0
  225. package/lib/shell-components/models/employee.d.ts +60 -0
  226. package/lib/shell-components/models/entityRoleFeature.d.ts +9 -0
  227. package/lib/shell-components/models/export-configuration-model.d.ts +8 -0
  228. package/lib/shell-components/models/export-data.module.d.ts +6 -0
  229. package/lib/shell-components/models/goalApprovedNotificationModel.d.ts +8 -0
  230. package/lib/shell-components/models/import-configuration-model.d.ts +3 -0
  231. package/lib/shell-components/models/initialStatusofUsers.d.ts +5 -0
  232. package/lib/shell-components/models/invoiceOutput-model.d.ts +9 -0
  233. package/lib/shell-components/models/leaveApplicationNotifiction.d.ts +7 -0
  234. package/lib/shell-components/models/multiChartsScheduling.d.ts +9 -0
  235. package/lib/shell-components/models/parkUserStoryInputModel.d.ts +7 -0
  236. package/lib/shell-components/models/project.d.ts +28 -0
  237. package/lib/shell-components/models/recentSearchApiModel.d.ts +6 -0
  238. package/lib/shell-components/models/searchCriteriaInputModelBase.d.ts +10 -0
  239. package/lib/shell-components/models/shellModulesInfo.d.ts +16 -0
  240. package/lib/shell-components/models/softlabels-model.d.ts +66 -0
  241. package/lib/shell-components/models/sprintReplanRequestedModel.d.ts +7 -0
  242. package/lib/shell-components/models/sprintStartedNotificationModel.d.ts +7 -0
  243. package/lib/shell-components/models/store-model.d.ts +13 -0
  244. package/lib/shell-components/models/store-search-model.d.ts +7 -0
  245. package/lib/shell-components/models/themes.model.d.ts +9 -0
  246. package/lib/shell-components/models/timesheetenabledisable.d.ts +16 -0
  247. package/lib/shell-components/models/user.d.ts +40 -0
  248. package/lib/shell-components/models/userStory.d.ts +188 -0
  249. package/lib/shell-components/models/userStoryCommentNotificationModel.d.ts +6 -0
  250. package/lib/shell-components/models/userStoryUpdateNotificationModel.d.ts +6 -0
  251. package/lib/shell-components/models/userstory-custom-fields.model.d.ts +6 -0
  252. package/lib/shell-components/models/validation.model.d.ts +5 -0
  253. package/lib/shell-components/models/widgetlist.d.ts +28 -0
  254. package/lib/shell-components/models/workspaceList.d.ts +19 -0
  255. package/lib/shell-components/services/authentication.service.d.ts +18 -0
  256. package/lib/shell-components/services/chat.service.d.ts +16 -0
  257. package/lib/shell-components/services/common-used.service.d.ts +45 -0
  258. package/lib/shell-components/services/feature.service.d.ts +19 -0
  259. package/lib/shell-components/services/google-analytics.service.d.ts +9 -0
  260. package/lib/shell-components/services/layout.service.d.ts +23 -0
  261. package/lib/shell-components/services/payment.service.d.ts +19 -0
  262. package/lib/shell-components/services/recentSearch.service.d.ts +16 -0
  263. package/lib/shell-components/services/shell.modules.service.d.ts +9 -0
  264. package/lib/shell-components/services/signalr.service.d.ts +25 -0
  265. package/lib/shell-components/services/theme.service.d.ts +14 -0
  266. package/lib/shell-components/shell.module.d.ts +117 -0
  267. package/lib/shell-components/shell.routing.d.ts +2 -0
  268. package/lib/shell-components/store/actions/authentication.actions.d.ts +327 -0
  269. package/lib/shell-components/store/actions/chat.actions.d.ts +399 -0
  270. package/lib/shell-components/store/actions/menuitems.actions.d.ts +51 -0
  271. package/lib/shell-components/store/actions/notification-validator.action.d.ts +25 -0
  272. package/lib/shell-components/store/actions/notifications.actions.d.ts +116 -0
  273. package/lib/shell-components/store/effects/authentication.effects.d.ts +54 -0
  274. package/lib/shell-components/store/effects/chat.effects.d.ts +30 -0
  275. package/lib/shell-components/store/effects/index.d.ts +1 -0
  276. package/lib/shell-components/store/effects/menuitems.effects.d.ts +17 -0
  277. package/lib/shell-components/store/effects/notification-validator.effects.d.ts +21 -0
  278. package/lib/shell-components/store/effects/notifications.effects.d.ts +23 -0
  279. package/lib/shell-components/store/reducers/authentication.reducers.d.ts +30 -0
  280. package/lib/shell-components/store/reducers/chat.reducers.d.ts +17 -0
  281. package/lib/shell-components/store/reducers/index.d.ts +59 -0
  282. package/lib/shell-components/store/reducers/menuitems.reducers.d.ts +11 -0
  283. package/lib/shell-components/store/reducers/notification-validator.reducers.d.ts +5 -0
  284. package/lib/shell-components/store/reducers/notifications.reducers.d.ts +10 -0
  285. package/package.json +22 -0
  286. package/public-api.d.ts +80 -0
  287. package/store/reducers/index.d.ts +24 -0
  288. package/thetradeengineorg1-snova-shell-module.d.ts +5 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thetradeengineorg1-snova-shell-module.js","sources":["../../../shell-module-components/shell-components/src/lib/globaldependencies/constants/feature-ids.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/constants/localstorage-properties.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/components/componentbase.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/intercepter/jwt.interceptor.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/helpers/moment-utc-date-adapter.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/softlabels.pipes.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/workflowstatus.pipes.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/orderby-pipe.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/utctolocaltime.pipe.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/helpers/window.helper.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/sanitize.pipe.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/google-analytics.service.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/helpers/dom.helper.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/theme.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/layout.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/actions/authentication.actions.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/reducers/authentication.reducers.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/actions/menuitems.actions.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/reducers/menuitems.reducers.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/actions/notifications.actions.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/reducers/notifications.reducers.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/actions/notification-validator.action.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/reducers/notification-validator.reducers.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/actions/chat.actions.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/reducers/chat.reducers.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/reducers/index.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/company-model.ts","../../../shell-module-components/shell-components/src/lib/shell-components/constants/api-urls.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/companieslist.model.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/authentication.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/common-used.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/entityRoleFeature.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/feature.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/effects/authentication.effects.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/effects/menuitems.effects.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/effects/notifications.effects.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/effects/notification-validator.effects.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/effects/chat.effects.ts","../../../shell-module-components/shell-components/src/lib/shell-components/store/effects/index.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/softlabels-model.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/helpers/fontawesome-icons.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/signalr.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/header-top/header-top.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/header-top/header-top.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/constants/menu-categories.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/sidenav/sidenav.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/sidenav/sidenav.template.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/sidebar-top/sidebar-top.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/sidebar-top/sidebar-top.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/models/workspaceList.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/constants/channel-names.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/AppNotification.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/searchCriteriaInputModelBase.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/store-search-model.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/shellModulesInfo.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/shell.modules.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/feed-time/feed-time-dialog.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/feed-time/feed-time-dialog.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/constants/notification-type-ids.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/NotificationsOutPutModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/UserStoryAssignedNotification.ts","../../../shell-module-components/shell-components/src/lib/shell-components/constants/notification-routes.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/RoleUpdatedNotification.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/ReportSubmittedNotification.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/ReportConfigAssignedNotification.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/multiChartsScheduling.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/AssetAssignedNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/NewProjectCreatedNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/goalApprovedNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/userStoryUpdateNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/userStoryCommentNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/sprintStartedNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/sprintReplanRequestedModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/NewProjectFeatureNotificationModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/archiveUserStoryModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/parkUserStoryInputModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/export-configuration-model.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/export-import-configuration/export-configuration.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/export-import-configuration/export-configuration-dialog.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/constants/available-languages.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/import-configuration-model.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/MessageTypingDetails.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/IntroModel.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/leaveApplicationNotifiction.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/chat.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/menu/searchTask.enum.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/employee.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/employee-List.ts","../../../shell-module-components/shell-components/src/lib/shell-components/models/widgetlist.ts","../../../shell-module-components/shell-components/src/lib/shell-components/enum/recentSearchType.enum.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/recentSearch.service.ts","../../../shell-module-components/shell-components/src/lib/globaldependencies/pipes/highLightText.pipe.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/menu/menu.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/menu/menu.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/notifications/notifications.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/notifications/notifications.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/feed-time/feed-time.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/feed-time/feed-time.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/submit-feedback/submit-feedback.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/submit-feedback/submit-feedback.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/notifications/announcement-dialog.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/notifications/announcement-dialog.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/header-side/header-side.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/header-side/header-side.template.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/sidenav/side-bar.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/sidenav/side-bar.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/admin-layout/admin-layout.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/admin-layout/admin-layout.template.html","../../../shell-module-components/shell-components/src/lib/shell-components/models/company-payment-model.ts","../../../shell-module-components/shell-components/src/lib/shell-components/services/payment.service.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/purchase-more-licenses.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/purchase-more-licenses.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/product-service.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/product-service.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/company-information.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/company-information.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/transactions.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/transactions.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/document.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/document.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/account.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/account.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/payment-method.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/payment-method.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/company-plans.component.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/Payments/company-plans.component.html","../../../shell-module-components/shell-components/src/lib/shell-components/components/lives/lives-welcome-page.ts","../../../shell-module-components/shell-components/src/lib/shell-components/components/lives/lives-welcome-page.html","../../../shell-module-components/shell-components/src/lib/shell-components/shell.module.ts","../../../shell-module-components/shell-components/src/lib/shell-components/shell.routing.ts","../../../shell-module-components/shell-components/src/public-api.ts","../../../shell-module-components/shell-components/src/thetradeengineorg1-snova-shell-module.ts"],"sourcesContent":["import { Guid } from \"guid-typescript\";\r\n\r\nexport class FeatureIds {\r\n public static Feature_ManageRegion: Guid = Guid.parse('BFC75CE3-5D68-4925-81EA-00976C6F662F');\r\n public static Feature_AddOrUpdateEmployeeJob: Guid = Guid.parse('A6CD2213-5D0F-4656-9961-00AA07CE13F8');\r\n public static Feature_ArchiveOrUnarchiveInvoice: Guid = Guid.parse('C1DB6780-AC21-4BB4-A945-017F7DFAA904');\r\n public static Feature_ManageTimeFormat: Guid = Guid.parse('D619A93E-E87D-43E2-AE49-022DD79380BD');\r\n public static Feature_ViewLeaves: Guid = Guid.parse('5416A640-3F1A-461F-A0A0-0260434A7F98');\r\n public static Feature_ManageTestcaseAutomationType: Guid = Guid.parse('0D8663CB-49F3-49DB-8679-030207CA3FC5');\r\n public static Feature_ManagePeakHour: Guid = Guid.parse('0392812F-4B3E-4166-A601-04D58FE4EA5D');\r\n public static Feature_ManageEducationLevels: Guid = Guid.parse('445311B1-285F-4CC7-8FA4-04E7C5221A3E');\r\n public static Feature_MyWork: Guid = Guid.parse('95FB2411-51C5-46C7-B712-05612528E302');\r\n public static Feature_Notifications: Guid = Guid.parse('373DA4E5-FAA3-4656-8800-057E15EAAFB1');\r\n public static Feature_StatusReporting: Guid = Guid.parse('465E3538-C86A-42AF-B865-0586F1816029');\r\n public static Feature_AddOrUpdateAuditCategory: Guid = Guid.parse('0555D9E1-9ACF-4154-8DDE-05EE0577A11B');\r\n public static Feature_ViewEmployeeContactDetails: Guid = Guid.parse('436EAC34-E8E1-4D15-8B26-061144FF0F90');\r\n public static Feature_ManageMasterSettings: Guid = Guid.parse('E5E99C6D-04F2-4940-921E-0648213D7ADF');\r\n public static Feature_ArchiveOrUnarchiveAuditReports: Guid = Guid.parse('C9C51C20-F2E5-43A0-B334-064B6BA49ECC');\r\n public static Feature_ViewAuditConducts: Guid = Guid.parse('03DC536E-CA33-4C47-A22A-074AE83D3813');\r\n public static Feature_AddOrUpdateExpense: Guid = Guid.parse('11EFDBAA-43AE-427C-B831-078B594BEEF1');\r\n public static Feature_ViewBadgesAssignedToEmployee: Guid = Guid.parse('951FF220-922A-4CCB-9971-07E64376DD2E');\r\n public static Feature_HrManagement: Guid = Guid.parse('A91CF15F-692E-4328-8D57-0851BC66EC8C');\r\n public static Feature_TaxSlabs: Guid = Guid.parse('BC3EF1A5-4906-4006-B28C-09631A3411BA');\r\n public static Feature_ViewEmployeeBankDetails: Guid = Guid.parse('FD3F1D35-6728-45D5-A3A8-0D1F5797F0C2');\r\n public static Feature_MarkDamagedAssest: Guid = Guid.parse('C8EF072C-6F7C-4BB7-8C66-0D64F0C838B5');\r\n public static Feature_WorkItemsHavingOthersDependency: Guid = Guid.parse('A280C7F1-0584-4DB8-ABC8-0D9F1CAFDC3B');\r\n public static Feature_ViewPayrollReports: Guid = Guid.parse('09900C86-081A-4584-8237-0DB406A6D7BA');\r\n public static Feature_ManageDocumentTemplates: Guid = Guid.parse('B65C336F-5739-484B-A6BE-0DDB9825E8D6');\r\n public static Feature_ViewTrainingCourses: Guid = Guid.parse('7BDFD84F-2416-47B4-BE9E-0E16F2617EA6');\r\n public static Feature_EmployeeSpentTime: Guid = Guid.parse('DBE32FD3-E64E-46CE-A87C-0F06ED2995E6');\r\n public static Feature_ManagePaymentMethod: Guid = Guid.parse('EE635C28-0FC2-420A-8C23-0F44DB2F5B4C');\r\n public static Feature_PayrollCalculationConfigurations: Guid = Guid.parse('86D8CAC3-3953-4FCB-955D-1129E9F8CF60');\r\n public static Feature_AddOrUpdateEmployeeDependentContactDetails: Guid = Guid.parse('0F264FA6-38E1-483A-A3DC-116F78AA978F');\r\n public static Feature_ContractPaySettings: Guid = Guid.parse('2DDDBEBA-63F7-423D-B522-1181B5782DDE');\r\n public static Feature_AddOrUpdateAuditQuestions: Guid = Guid.parse('04F61E30-61D2-415C-81E2-128157BA6D74');\r\n public static Feature_AddOrUpdateEmployeeSkills: Guid = Guid.parse('F12C7ECF-418B-4978-A113-131C5A8938E7');\r\n public static Feature_ManageExpenseManagement: Guid = Guid.parse('2CDAADB0-F0CB-4513-B547-13A8652143B3');\r\n public static Feature_CreateRoster: Guid = Guid.parse('EACD1105-3B6F-48B9-A8CA-140592482A8F');\r\n public static Feature_ManageLicenceType: Guid = Guid.parse('E81E64E5-4438-4DF4-AAE0-146DCA7D6703');\r\n public static Feature_AssignOrUnassignTrainingCourse: Guid = Guid.parse('F2CB1EF2-D544-4491-9026-148F53FD404B');\r\n public static Feature_EmployeeAccountDetails: Guid = Guid.parse('BEF333FC-7839-4CF9-AACE-16597EA48E86');\r\n public static Feature_EmployeeLoans: Guid = Guid.parse('7E12ED2E-0A76-450F-95DF-16EB35A3EA23');\r\n public static Feature_AbilityToChat: Guid = Guid.parse('5D7D8B8F-640E-4CB7-BAFC-16F3B2157BD3');\r\n public static Feature_EmployeeWorkAllocation: Guid = Guid.parse('7BB99906-39C1-4015-84B5-17011CE1925D');\r\n public static Feature_ViewEmployeeShiftDetails: Guid = Guid.parse('30307BAB-E865-496D-BD38-172732465610');\r\n public static Feature_ViewEmployeeLanguageDetails: Guid = Guid.parse('67B892C5-EA3B-4A7A-96D8-172E167717AB');\r\n public static Feature_ManageBranch: Guid = Guid.parse('AE2EB7E5-8E9D-4032-A1F6-1743A91FD810');\r\n public static Feature_ManageMaritalStatuses: Guid = Guid.parse('D5FF153B-7AB6-480A-8826-18CA2F619287');\r\n public static Feature_AddOrUpdateFoodItem: Guid = Guid.parse('22DEBA23-471F-4F96-B458-1A53A540AC99');\r\n public static Feature_ManageHtmltemplate: Guid = Guid.parse('40AC6FAE-794D-47E9-B968-1B7E175EE93B');\r\n public static Feature_ManageRateSheet: Guid = Guid.parse('F14A8B90-C070-4117-A932-1EEBCEC05978');\r\n public static Feature_AddOrUpdateAsset: Guid = Guid.parse('D84D5F4F-39DB-4CBE-AF74-1F40179B00C4');\r\n public static Feature_AddOrEditEmployeeLoanInstallment: Guid = Guid.parse('513B41A3-BA1A-4A5C-94B9-1FAEDCBCE6DD');\r\n public static Feature_AddOrUpdateAuditReports: Guid = Guid.parse('6F5C8E92-B5D7-4038-A160-1FC745221DFD');\r\n public static Feature_ManageDateFormat: Guid = Guid.parse('E1EF26E2-BD55-49C9-BEA3-209972ED4F14');\r\n public static Feature_ConfigurePayrollStatus: Guid = Guid.parse('495B187C-C8E4-4D48-83D5-209D90E2B1CC');\r\n public static Feature_UpsertCompanyDetails: Guid = Guid.parse('6D3995AB-307C-46B6-8B11-2260635FF383');\r\n public static Feature_ViewEmploymentContractDetails: Guid = Guid.parse('2313706D-52A9-4E22-ACEF-226EC64FBDAA');\r\n public static Feature_DownloadOrShareInvoice: Guid = Guid.parse('9CE82415-885E-483B-80B8-235911073681');\r\n public static Feature_ViewAudit: Guid = Guid.parse('9CD93AB2-3854-42B6-B1B9-23651039E231');\r\n public static Feature_EditMessage: Guid = Guid.parse('EDE27321-9F6C-4491-A96F-23AEFED646EE');\r\n public static Feature_ApproveOrRejectLeave: Guid = Guid.parse('2C22916F-B80B-4C51-9534-23F698DE120B');\r\n public static Feature_SpentTimeDetails: Guid = Guid.parse('C0667777-CA0E-4B12-9F42-242DD20FDA45');\r\n public static Feature_ArchiveOrUnarchiveAudit: Guid = Guid.parse('707D00B2-47DB-455D-9A54-2454C23D8F60');\r\n public static Feature_ManageBugPriority: Guid = Guid.parse('15A34738-C863-40CF-A67A-24A2C2B6B176');\r\n public static Feature_ViewEmployeeWorkExperienceDetails: Guid = Guid.parse('78C66541-EA81-4054-B289-2584C191E50C');\r\n public static Feature_ProfessionalTaxRanges: Guid = Guid.parse('7E271B24-EED5-4E58-BB1D-2628C7EF61FF');\r\n public static Feature_EnableNotifications: Guid = Guid.parse('E10DDAE0-39E4-4010-9981-269FEA0991D5');\r\n public static Feature_TdsSettings: Guid = Guid.parse('E50D0E15-8A69-488B-9391-27659FA2AB4A');\r\n public static Feature_ManageCountry: Guid = Guid.parse('9EE8FEF9-E6DF-4A42-ABE6-27B8F1416A15');\r\n public static Feature_ViewExpenses: Guid = Guid.parse('D6E8394F-38D7-4B18-8B63-283152326BF5');\r\n public static Feature_EmployeeLogtimeDetailsReport: Guid = Guid.parse('C1FB7F26-C9F3-42C7-8ADE-2848B7597F97');\r\n public static Feature_CreditAmount: Guid = Guid.parse('C692C6CE-E6AC-4090-B41B-295066EDD3CC');\r\n public static Feature_AllGoals: Guid = Guid.parse('8A67D6D6-48AF-4720-9C6B-296208DC93DE');\r\n public static Feature_AddOrUpdateAssignmentStatus: Guid = Guid.parse('3515DD83-E79D-484D-ACDB-29809881107B');\r\n public static Feature_ArchiveOrUnarchiveAuditConduct: Guid = Guid.parse('2B3655D5-98B2-4072-8A02-29860F828CC7');\r\n public static Feature_ViewEmployeeActivityTimeUsage: Guid = Guid.parse('5FAFD236-4EA0-4CDD-907A-29EC2D7678BE');\r\n public static Feature_ProcessDashboard: Guid = Guid.parse('85E02F29-E3E5-4428-9E77-2A42B190CDDA');\r\n public static Feature_ManageTimeSheetManagement: Guid = Guid.parse('6272FA8F-5E85-4A66-87F5-2A5C33729E0A');\r\n public static Feature_ManageCompanySettings: Guid = Guid.parse('E5A39D73-6EF6-4C40-8B39-2AD14F78FF7C');\r\n public static Feature_AccessTestrepo: Guid = Guid.parse('721AEE4B-BB75-4DB0-B351-2BA2B5505229');\r\n public static Feature_CanAssignAuditTags: Guid = Guid.parse('CE4287D9-32EB-4870-9ECB-2C7EF0ADC0FC');\r\n public static Feature_AddOrEditLeaveType: Guid = Guid.parse('9794D340-655A-4422-B826-2CF9C0F478E3');\r\n public static Feature_EveryDayTargetStatus: Guid = Guid.parse('14E13B03-7429-44B6-9C23-2E5E81FF60CC');\r\n public static Feature_ArchiveProject: Guid = Guid.parse('E6F4C002-AB0D-435C-A044-2F9527155F50');\r\n public static Feature_DirectMessaging: Guid = Guid.parse('6197E40B-427B-475B-96B1-306CDF2E5E38');\r\n public static Feature_ViewStores: Guid = Guid.parse('52B77431-8DA0-4814-AAB6-309FE61321B8');\r\n public static Feature_ApplyLeave: Guid = Guid.parse('B2117C2A-99A0-4676-BDFE-31B0DABECFB7');\r\n public static Feature_ManageInvoiceSchedule: Guid = Guid.parse('85A65EC4-D828-4DDE-AC62-33CDB3F01592');\r\n public static Feature_AssignAdhocWorkToAllUsers: Guid = Guid.parse('36AD0274-2E7E-406D-87D0-3514075709A7');\r\n public static Feature_ManagePermissionReason: Guid = Guid.parse('871C9F44-8D4F-4B8C-8B0B-353DDD87EDC2');\r\n public static Feature_CanChangeVisualisationType: Guid = Guid.parse('159E546D-CC90-4DA4-A470-362A1B2477E8');\r\n public static Feature_AddOrUpdateClient: Guid = Guid.parse('7670BA49-3296-4EBF-A5A6-36F46832ADC4');\r\n public static Feature_AddOrUpdateInvoice: Guid = Guid.parse('38234110-8A67-46CC-AB82-370A8F6F0CE6');\r\n public static Feature_RecentlyPurchasedAssets: Guid = Guid.parse('8DD962B3-B283-4827-BB0A-37B60C24CECF');\r\n public static Feature_CanCreateReminders: Guid = Guid.parse('5CE961F7-32D2-4C38-9781-38353C120644');\r\n public static Feature_ManagePaygrade: Guid = Guid.parse('0AD0284C-DA57-4BDC-A7E0-38DC65688B5C');\r\n public static Feature_ViewRoles: Guid = Guid.parse('212D77E7-3E63-4D44-9747-391523EE722F');\r\n public static Feature_AddOrUpdateMasterQuestionType: Guid = Guid.parse('98D0109C-88BE-4F7E-AF71-395E64F78D36');\r\n public static Feature_ManageRelationShip: Guid = Guid.parse('E83B3AE8-E25B-4D5A-8D1E-3A4F28B85C09');\r\n public static Feature_PayrollRun: Guid = Guid.parse('1CBAE3D3-D06C-42C7-BC67-3A7E1D6A5883');\r\n public static Feature_ArchiveOrUnarchiveAuditCategory: Guid = Guid.parse('90E2FB23-D3BF-4224-AF46-3A80006E7F07');\r\n public static Feature_DragApps: Guid = Guid.parse('1557DCD6-B1DE-44DB-8E4B-3BA4D2994383');\r\n public static Feature_ArchiveSubmittedStatusReport: Guid = Guid.parse('3680A22E-FBE2-4372-8BE5-3BD283A8EECE');\r\n public static Feature_CanViewOrganizationChart: Guid = Guid.parse('A70176B7-768B-4CA0-B31D-3BE7378AC6B7');\r\n public static Feature_DeleteCustomFieldsForHrManagement: Guid = Guid.parse('74FBAFBC-FD1F-4DC7-9FA0-3C459412F31D');\r\n public static Feature_EditPayslip: Guid = Guid.parse('7A11C52B-30C2-4923-977C-3C4D0F87A4CC');\r\n public static Feature_ViewEmployeeCredits: Guid = Guid.parse('4258DDDE-DA15-48E1-97BE-3C72ECAE70B2');\r\n public static Feature_FinancialYearConfigurations: Guid = Guid.parse('4542DE20-63BE-4CF3-BEFB-3D040897BC24');\r\n public static Feature_TestrepoManagement: Guid = Guid.parse('90DB7546-442F-49EE-BA98-3D8A78383C6C');\r\n public static Feature_DocumentManagement: Guid = Guid.parse('7644F6BE-48A6-490D-91B6-3DB5B8CB41A6');\r\n public static Feature_ApproveEmployeeTaxAllowances: Guid = Guid.parse('3631B1E9-B9CA-4CE4-B33B-3DDBA2B2459E');\r\n public static Feature_ViewEmployeeReportToDetails: Guid = Guid.parse('7172C444-BC93-444D-A0B4-3E81A34E4DA7');\r\n public static Feature_AddOrEditCustomFieldsForProjectManagement: Guid = Guid.parse('63051871-D91B-43D1-8C5B-3F1B85F12A64');\r\n public static Feature_AddOrUpdateStatusReportingConfiguration: Guid = Guid.parse('8CA7B841-31A8-48D2-B6D1-3F299BE90CB7');\r\n public static Feature_UserUpload: Guid = Guid.parse('0C94E4A7-5F29-49E8-9611-3FBB1CFBDA19');\r\n public static Feature_LateEmployee: Guid = Guid.parse('2D18DB5B-C8C8-47E7-B4A2-4291F4C65F36');\r\n public static Feature_ViewEmployeeLoanInstallment: Guid = Guid.parse('8AF0BA30-3BB3-4C0B-9450-43E05D5FBD59');\r\n public static Feature_ViewEmployeeMembershipDetails: Guid = Guid.parse('9AFFAD6C-00DE-483F-A5F2-442E68ADA2CC');\r\n public static Feature_RecentlyAssignedAssets: Guid = Guid.parse('B289AAC5-5E1B-4E6D-8AA1-443259B4E7F0');\r\n public static Feature_EmployeesCurrentWorkingOrBacklogWorkItems: Guid = Guid.parse('3E8484EA-92C6-44E0-AFC0-4464EB709046');\r\n public static Feature_ViewStatusReports: Guid = Guid.parse('455A85C4-BD8D-4425-B978-44D17778520D');\r\n public static Feature_ResignationStatus: Guid = Guid.parse('63191182-2313-486D-BE32-4513D814F24E');\r\n public static Feature_Venue: Guid = Guid.parse('CDE6B924-BC12-4EA3-821E-455FFF6D2C65');\r\n public static Feature_ManageButtonType: Guid = Guid.parse('D94CD095-9CC6-4EEB-8F4F-45C70FC91B0A');\r\n public static Feature_ViewRoomTemperature: Guid = Guid.parse('92AD11C0-C155-471E-B7E9-461ECCDB5DD4');\r\n public static Feature_UpdateFoodOrder: Guid = Guid.parse('9C6EE407-2DE4-4398-8CDA-463724D2C376');\r\n public static Feature_ManageCurrency: Guid = Guid.parse('FA6EE079-E906-4749-B6F7-47230D7CB3EF');\r\n public static Feature_CanSubmitCustomFieldsForHrManagement: Guid = Guid.parse('494B94A6-9AD5-44AE-A1C5-477059D4F675');\r\n public static Feature_ArchiveOrUnarchiveEstimate: Guid = Guid.parse('3470BB01-6130-4152-A9C1-47F9AB4F3B1C');\r\n public static Feature_ManageLeavesManagement: Guid = Guid.parse('B59BD701-8EC3-465E-9208-4888DA83DD61');\r\n public static Feature_AddOrUpdateChannel: Guid = Guid.parse('391C62FC-92F4-4587-AF59-48E92BEC68CC');\r\n public static Feature_ViewForms: Guid = Guid.parse('137FA14C-E705-499E-ACDF-4926EECF74EE');\r\n public static Feature_CanteenManagement: Guid = Guid.parse('93FF3297-9FA5-48E3-ADF3-4954A8C51720');\r\n public static Feature_ManageProcessDashboardStatus: Guid = Guid.parse('4C3792A3-6C4D-4AF4-A6BC-4A87D6A066EC');\r\n public static Feature_ProjectsActivelyRunningGoals: Guid = Guid.parse('31773C75-D2DA-4F39-9202-4B0280814756');\r\n public static Feature_AddOrUpdateEmployeeImmigration: Guid = Guid.parse('53EF12A9-3722-4CD6-83B3-4BD3D5EEB486');\r\n public static Feature_AlternateSignIn: Guid = Guid.parse('67058FD4-7264-4ECB-8E0B-4CEE0E4380CB');\r\n public static Feature_ManageActivityTracker: Guid = Guid.parse('E725A1B5-5339-47FB-83F2-4E00AE5731BA');\r\n public static Feature_RecentlyDamagedAssets: Guid = Guid.parse('11D37B68-7EA8-4BA8-9E46-4F979FA20821');\r\n public static Feature_ManageDesignation: Guid = Guid.parse('A87250CB-0DA7-410C-89A5-511F322292FB');\r\n public static Feature_AssetHistory: Guid = Guid.parse('69360404-1A1D-48C7-BAC0-515274F101AB');\r\n public static Feature_ProjectManagement: Guid = Guid.parse('94C74250-5D25-4973-909E-51C280AD09C6');\r\n public static Feature_ManageAppsAndUrls: Guid = Guid.parse('5DA852AD-8375-43FE-93E3-53194F76BA7B');\r\n public static Feature_ManageWorkItemSubType: Guid = Guid.parse('51FF182E-45C9-43BB-A813-53B92DC21E46');\r\n public static Feature_ManageTestcaseStatus: Guid = Guid.parse('0BCB4B35-8EB5-46D2-A0CC-53D1945A87F2');\r\n public static Feature_AddOrUpdateEmployeeBankDetails: Guid = Guid.parse('BBEF84FB-E684-4903-BAEB-541A8D8EFBFF');\r\n public static Feature_WorkflowManagement: Guid = Guid.parse('85603293-1E1D-40BB-A6E7-54DB88340D0F');\r\n public static Feature_ArchiveForm: Guid = Guid.parse('C3DBC2EA-06A9-41F9-97DA-55893B767A34');\r\n public static Feature_ShareExpense: Guid = Guid.parse('A4DE6A99-E3E1-4BC4-9EF4-560076FA7440');\r\n public static Feature_ManageSystemApps: Guid = Guid.parse('BFBED52E-D5D3-4D4D-B658-56126DE36550');\r\n public static Feature_BookingManagement: Guid = Guid.parse('7B7129F0-BFCE-4D84-AE0C-56F5EB2148C3');\r\n public static Feature_GoalLevelReports: Guid = Guid.parse('F2527D3F-087A-414D-9959-572E21386AC5');\r\n public static Feature_ViewEmployeeEducationDetails: Guid = Guid.parse('BCCD1084-E715-499F-9D5D-572F062155FF');\r\n public static Feature_BoardTypeApi: Guid = Guid.parse('EE655B63-06B5-4525-821E-57522BF98C57');\r\n public static Feature_ManageLeaveStatus: Guid = Guid.parse('0BF8995A-4F92-476D-93C7-5759A5538FD4');\r\n public static Feature_ManageWorkItemReplanType: Guid = Guid.parse('BC75FDF3-7E5E-4FA2-B210-5852C41DD0C4');\r\n public static Feature_ArchiveUser: Guid = Guid.parse('B2D12AF0-193F-4133-A6DB-587D1C3BB293');\r\n public static Feature_ViewTrackedInformationOfUserstory: Guid = Guid.parse('DF6FC91A-BDCE-4577-8660-58A5F21F9C70');\r\n public static Feature_AddUser: Guid = Guid.parse('A07C27B5-1C6C-4CF9-9DFD-58AEBC149192');\r\n public static Feature_LeaveManagement: Guid = Guid.parse('F80DD978-F979-4990-B084-59C48E272A2E');\r\n public static Feature_ViewProjects: Guid = Guid.parse('F3AEDC05-A81C-4F8F-B7F7-5B07C128CE12');\r\n public static Feature_ApproveOrRejectTimesheet: Guid = Guid.parse('3845D5C9-E786-49E2-8262-5C2E251257EF');\r\n public static Feature_RoleManagement: Guid = Guid.parse('A3B4484C-4F5A-4AA5-8D98-5C8696D6A09F');\r\n public static Feature_CopyOrMoveQuestions: Guid = Guid.parse('7C2B0958-AD2C-4A9E-A03C-5CADF6F2C9E1');\r\n public static Feature_ManageState: Guid = Guid.parse('619D02EE-49E0-4AFD-8639-5CD82EFFC5D3');\r\n public static Feature_ManageCustomFormSubmissions: Guid = Guid.parse('C8DF56DF-5438-4876-8B5E-5D46BB3FA087');\r\n public static Feature_ViewLocations: Guid = Guid.parse('BB2292A7-7BB6-4606-9D92-5D54FE0693E8');\r\n public static Feature_ManageInductionWork: Guid = Guid.parse('78635301-7668-4B60-9D3E-5D8C1C160C55');\r\n public static Feature_ViewAllEmployeeActivityReports: Guid = Guid.parse('AE34EE14-7BEB-4ECB-BCE8-5F6588DF57E5');\r\n public static Feature_DownloadEmployeeSalaryCertificate: Guid = Guid.parse('656502D8-3898-4451-8609-5F9BBCF23463');\r\n public static Feature_ManageTestrepoManagement: Guid = Guid.parse('37E0C505-FA24-426B-8DA6-5FD17FC5BEA2');\r\n public static Feature_ManageFormType: Guid = Guid.parse('76545D51-8BC0-46DC-B5D3-603051C6E797');\r\n public static Feature_ManageCompanyStructure: Guid = Guid.parse('632C2C2E-3527-45B1-9DE8-6043A12F3942');\r\n public static Feature_ViewRecentlyActiveClients: Guid = Guid.parse('25308DB9-8310-42C4-8995-615DFAA4C607');\r\n public static Feature_ManageRoster: Guid = Guid.parse('1F913475-F189-4329-9ABB-61D1801F257D');\r\n public static Feature_EmployeeWorkLogReport: Guid = Guid.parse('AF236801-408D-4B33-A350-61EE8F194F87');\r\n public static Feature_DownloadOrShareAuditReports: Guid = Guid.parse('1A9DA85D-1B2D-4CAC-AFBA-620B3C77ABA4');\r\n public static Feature_ConfigureWebhooks: Guid = Guid.parse('47813006-C1BA-4F74-AB00-621CC82828AC');\r\n public static Feature_ManageStoreManagement: Guid = Guid.parse('6C301455-7A81-40C5-916C-625D86C423CF');\r\n public static Feature_AddOrUpdateProduct: Guid = Guid.parse('A6ADC4B4-11E5-440B-B472-62624EAF8F79');\r\n public static Feature_CreateFolder: Guid = Guid.parse('B437D951-7587-4335-B03E-62C4D5600B19');\r\n public static Feature_PayrollTemplateConfiguration: Guid = Guid.parse('B2BEE500-1AA1-43C6-8C3F-637809C326EC');\r\n public static Feature_AssetsAllocatedToMe: Guid = Guid.parse('4A2E2EAC-1234-4A8F-8EBD-63C68264DFB4');\r\n public static Feature_EmployeeCreditorDetails: Guid = Guid.parse('DC499C59-A9A0-4DC3-A179-64128E994AC4');\r\n public static Feature_ApproveEmployeeLoans: Guid = Guid.parse('D9FDF976-5055-42CA-87F6-644EA5BF1F2E');\r\n public static Feature_ViewEmployeeSkillDetails: Guid = Guid.parse('30139536-4A53-4ED8-8645-646DA6E8C3E3');\r\n public static Feature_CanViewUsersCanteenSummary: Guid = Guid.parse('814BCE6B-8162-425F-8222-64E802DE881E');\r\n public static Feature_WorkAllocation: Guid = Guid.parse('7056A1D4-D08A-4BB5-8C4E-650CCC7F670A');\r\n public static Feature_ManageWebhook: Guid = Guid.parse('6AAEC58E-DE60-4ED4-A923-65644D76A7C2');\r\n public static Feature_AddPermission: Guid = Guid.parse('BC3F0AD1-D9C5-400A-BA4D-65F57A35C45B');\r\n public static Feature_ViewTodaysTimesheet: Guid = Guid.parse('C4269551-FC5D-4850-BA65-66B91D390833');\r\n public static Feature_CanAssignBadgeToEmployee: Guid = Guid.parse('F829742D-BA2D-4194-8EF0-67DEC1470310');\r\n public static Feature_ManageReportingMethods: Guid = Guid.parse('219DDACB-A233-4A59-BDE8-68B6543BFC02');\r\n public static Feature_ManageFeedBackType: Guid = Guid.parse('B38B3588-BD01-4BCF-BDF0-6937D4189037');\r\n public static Feature_ViewEmployeeJobDetails: Guid = Guid.parse('0A345822-1BF4-45FD-9021-69A09258D126');\r\n public static Feature_AddOrUpdateEmployeeWorkExperienceDetails: Guid = Guid.parse('AC2F36C6-6B03-4CE5-9E23-6A4691AFEE75');\r\n public static Feature_DoChannelChatOnly: Guid = Guid.parse('A3B9B81A-109B-445D-9AEA-6B8A2B71C884');\r\n public static Feature_UpdatePermission: Guid = Guid.parse('3B7CAE23-30A6-4BB6-80D4-6BA115607EEB');\r\n public static Feature_Security: Guid = Guid.parse('528F8181-5941-4098-AECC-6C43153F7DFE');\r\n public static Feature_SubmitStatusReport: Guid = Guid.parse('9227D745-CD7F-41ED-90AC-6D2430341185');\r\n public static Feature_Audit: Guid = Guid.parse('DB1620F0-2996-4635-A56B-6D2B6C7B47D2');\r\n public static Feature_AddOrUpdateEmployeeEmergencyContactDetails: Guid = Guid.parse('99646779-A28C-4615-9ACA-6F2495ADF07A');\r\n public static Feature_BugReport: Guid = Guid.parse('EA9785B3-8AD8-416C-8194-6F9A3CB9CD05');\r\n public static Feature_TaxAllowance: Guid = Guid.parse('D3A115A2-6E15-4CE5-8F52-6FFEE145FEA6');\r\n public static Feature_AssetComment: Guid = Guid.parse('E1CA9EB5-E315-4783-8CF5-703516063E54');\r\n public static Feature_ViewEmployeeDependentContactDetails: Guid = Guid.parse('CA80EDD9-0CCB-4009-820B-704B14089677');\r\n public static Feature_PurchaseFoodItem: Guid = Guid.parse('65013EFD-16C8-4E7F-9A26-71401EA74B45');\r\n public static Feature_ViewTrainingAssignments: Guid = Guid.parse('F59F9F21-5833-409E-9861-717C7C013806');\r\n public static Feature_ViewTimesheetFeed: Guid = Guid.parse('7774A180-FB01-4996-9EF3-7186B2F47556');\r\n public static Feature_AddOrUpdateEmployeeReportingToDetails: Guid = Guid.parse('568F51E0-BDA3-47C2-9C3E-71EE6D717565');\r\n public static Feature_PayrollRoleConfiguration: Guid = Guid.parse('6CC68DAB-3E6A-4F98-A4B1-72B3D72E7916');\r\n public static Feature_DashboardManagement: Guid = Guid.parse('6C8108C8-6D9B-439C-ACEE-7358037F1C20');\r\n public static Feature_ManageCompanyLocation: Guid = Guid.parse('CEFAA542-8C5F-494C-AF67-73C8DF15F82A');\r\n public static Feature_ManageNumberFormat: Guid = Guid.parse('56D7D787-2A41-4C43-95A9-73EE1D6090B9');\r\n public static Feature_WorkItemsHavingDependencyOnMe: Guid = Guid.parse('33F49110-324C-441A-A16C-741DD89DA5A2');\r\n public static Feature_AddOrUpdateEmployeeEducationDetails: Guid = Guid.parse('439DEFCD-5C44-4009-B63A-743B2379A9B8');\r\n public static Feature_ArchiveRole: Guid = Guid.parse('D73EA2AA-B26F-4A83-A089-7488CA345167');\r\n public static Feature_TimeSheetManagement: Guid = Guid.parse('6B49DFE1-E79C-4845-A2F3-7518D72CCFEB');\r\n public static Feature_AddOrUpdateApplications: Guid = Guid.parse('8B8716C2-5278-4E82-83E9-75967FAC8FC5');\r\n public static Feature_PublishAsDefault: Guid = Guid.parse('679C1903-999A-4CDA-8880-75E4CED26727');\r\n public static Feature_ViewMasterQuestionTypes: Guid = Guid.parse('8D791593-1F3B-4789-A141-762B32B43218');\r\n public static Feature_ViewProductDetails: Guid = Guid.parse('3F644A8B-6603-4BD2-B4F7-7644D3316396');\r\n public static Feature_DeleteCustomFieldsForProjectManagement: Guid = Guid.parse('D36E5E73-0491-410E-A850-76DCBE5DA0D1');\r\n public static Feature_ManageAuthorization: Guid = Guid.parse('96466483-D687-4C74-BBDF-787A274BA7E2');\r\n public static Feature_ManageMemberships: Guid = Guid.parse('A366C067-9182-418F-A853-79130167001A');\r\n public static Feature_ManageCustomApps: Guid = Guid.parse('8E0FE086-DCBA-49ED-8D04-792040852FC2');\r\n public static Feature_FoodItemsList: Guid = Guid.parse('AA593ABA-A5A5-4207-BF67-79A487BD441E');\r\n public static Feature_AddOrUpdateForm: Guid = Guid.parse('7ED5EAC4-0065-42EC-9999-79C858198845');\r\n public static Feature_ArchiveAdhocWork: Guid = Guid.parse('3B054C8C-1647-4DE2-A0F8-79E370F668D3');\r\n public static Feature_ManageLeaveSession: Guid = Guid.parse('0414396D-E747-4367-B043-7A383F441B56');\r\n public static Feature_ManageAccessibleIpAdresses: Guid = Guid.parse('4DA88661-17D9-430F-B4D9-7B91ED93562A');\r\n public static Feature_WorkItemUpload: Guid = Guid.parse('76DD0670-0B77-4E5C-92D5-7B9A41DA34A7');\r\n public static Feature_ManageAppSettings: Guid = Guid.parse('B7FEBDFD-C2FD-41C6-A795-7DBF32054A41');\r\n public static Feature_CanApprovePerformance: Guid = Guid.parse('5E34726C-6368-49D0-88D8-7E4F4E7D0161');\r\n public static Feature_AddOrUpdateLocation: Guid = Guid.parse('ACE153D5-0C46-4AA1-B93D-7E89B01DAD07');\r\n public static Feature_ManageRestrictionType: Guid = Guid.parse('F7EFF14E-2FE7-4FD6-AA79-7ED7D87495A0');\r\n public static Feature_ManageLeaveFormula: Guid = Guid.parse('C559FB2B-5659-4200-825C-7F95CE70C685');\r\n public static Feature_EmployeeWorkItems: Guid = Guid.parse('E0FD7B15-C67A-447D-AD26-81232FA7424E');\r\n public static Feature_BillingManagement: Guid = Guid.parse('71063FB9-DCD1-469B-9AA7-81DEB2CECE1B');\r\n public static Feature_EditDashboard: Guid = Guid.parse('AD35BA30-115D-426B-A37B-8243759ED747');\r\n public static Feature_ViewTrainingMatrix: Guid = Guid.parse('CFD444ED-0FB8-46CA-81D0-829A2C51CAC4');\r\n public static Feature_ManageAppFilters: Guid = Guid.parse('B424B603-1997-4E6F-8E32-82AD90097950');\r\n public static Feature_ManageLeaveType: Guid = Guid.parse('9A3EC77C-4F4A-467A-995E-82B46C746A61');\r\n public static Feature_ArchiveStatusReportConfiguration: Guid = Guid.parse('22117779-4744-4B8A-A21E-836699CA7951');\r\n public static Feature_ResetPassword: Guid = Guid.parse('8C947AF0-C7CD-4F5C-B755-8396918B11DF');\r\n public static Feature_EditRoster: Guid = Guid.parse('5A221595-8A31-47EA-A830-84267C3A5E7E');\r\n public static Feature_AbilityToCreatePublicProject: Guid = Guid.parse('4A987FA8-231D-49BE-AD46-84482A32BDA4');\r\n public static Feature_PayrollMaritalStatusConfiguration: Guid = Guid.parse('E65F528C-2B37-4462-B393-84C597ADC571');\r\n public static Feature_ManageRateType: Guid = Guid.parse('1D1EAEA4-200A-497E-BEAC-86F15103FEDB');\r\n public static Feature_AddProject: Guid = Guid.parse('1EA77455-1ECA-4D7D-A75B-86FF45B3555E');\r\n public static Feature_AddOrUpdateEmployeeJobDetails: Guid = Guid.parse('90157706-EEE6-47C2-90D7-87D180575C49');\r\n public static Feature_ManageWorkItemStatus: Guid = Guid.parse('42DB79B4-37FD-46CE-A4B2-89348955DF44');\r\n public static Feature_ManageEmploymentType: Guid = Guid.parse('34722F45-6282-4F36-89CE-8976A344AE05');\r\n public static Feature_AddOrUpdateAdhocWork: Guid = Guid.parse('2BCB92A0-7244-4013-ABB1-897A39F15B30');\r\n public static Feature_ForgotPassword: Guid = Guid.parse('F45CF108-9817-4071-8220-898CF40099F8');\r\n public static Feature_LogTimeReport: Guid = Guid.parse('D1865698-9C7E-4D5D-B076-89CE8BF99E43');\r\n public static Feature_DeleteDashboard: Guid = Guid.parse('BC4D77D4-0C34-42B1-A8F6-8A7008CD6111');\r\n public static Feature_ViewQuestionTypes: Guid = Guid.parse('47380C9D-2EC7-4106-8AEE-8C14A1A7FFFA');\r\n public static Feature_ViewHistoricalTimesheet: Guid = Guid.parse('105B8E1C-D81B-478F-95A0-8C88D2D80BE9');\r\n public static Feature_WorkItemsWaitingForQaApproval: Guid = Guid.parse('78D5F664-AA1F-4350-8496-8DE690AF0EC8');\r\n public static Feature_InviteeForSignature: Guid = Guid.parse('22491EAE-8323-4B0B-9FB4-900FE6FA0BE4');\r\n public static Feature_AddOrUpdateRole: Guid = Guid.parse('FA1ED611-C599-4C74-83BC-90CAA3EE73AE');\r\n public static Feature_CanCloneAudit: Guid = Guid.parse('F834DEF5-C437-4C14-9CEC-90F686EE2A3D');\r\n public static Feature_ArchiveTrainingCourse: Guid = Guid.parse('9A5E3E71-AB44-4145-A6C3-912A0B0F6FCC');\r\n public static Feature_PunchCard: Guid = Guid.parse('F369FF94-F64C-4028-94E5-91D6CFF2C74A');\r\n public static Feature_ManageActivityConfig: Guid = Guid.parse('F10C49F5-69DA-425B-8CDE-923FF63F28A5');\r\n public static Feature_OrganizationChart: Guid = Guid.parse('E37B1251-07E8-4C9E-98A8-929731DFD938');\r\n public static Feature_DashboardMenuItem: Guid = Guid.parse('FD20B706-42B1-432D-AEEF-92C28AC7EF10');\r\n public static Feature_FeatureUsageReport: Guid = Guid.parse('88E15818-CF58-4ADA-A5C5-9391AEDDFC18');\r\n public static Feature_ActivityTracker: Guid = Guid.parse('7FFA6DB5-225A-4A78-A44D-949F9B15E57D');\r\n public static Feature_DeleteGoalFilter: Guid = Guid.parse('1191C5D3-66F1-419D-9F72-9532B8B4675E');\r\n public static Feature_EmployeePresence: Guid = Guid.parse('776A34C2-4548-4AA2-8042-96966E2F2C1D');\r\n public static Feature_ManagePayFrequency: Guid = Guid.parse('D4F3DD2B-B33A-46D5-8E81-96C2DE17D996');\r\n public static Feature_ManageProjectManagement: Guid = Guid.parse('1349A291-4E98-4918-B923-96FB0BBBFD06');\r\n public static Feature_ManageField: Guid = Guid.parse('B208C678-B63A-42E5-882B-976CD91592C6');\r\n public static Feature_ViewApplicationUsageReports: Guid = Guid.parse('6648F5B5-529C-445F-BF70-97C74F101A28');\r\n public static Feature_AddOrUpdateTimesheetentry: Guid = Guid.parse('AB1218DB-D348-45DB-BF5A-9808DC00651E');\r\n public static Feature_AddOrUpdateEmployeePersonalDetails: Guid = Guid.parse('05209B4C-7CE9-4E00-9BE3-989798603B01');\r\n public static Feature_AddOrUpdateQuestionType: Guid = Guid.parse('DD4B5A49-9594-4106-9954-995C095F5D7D');\r\n public static Feature_ViewFiles: Guid = Guid.parse('D7816276-1B93-49CC-8E51-99762414E152');\r\n public static Feature_AddOrUpdateAuditConduct: Guid = Guid.parse('60994F55-5731-4A28-82EC-9A77399B4EAB');\r\n public static Feature_EmployeePayrollDetails: Guid = Guid.parse('AF7A7997-4CE2-41B8-813D-9AE6DF46797E');\r\n public static Feature_ManageBadges: Guid = Guid.parse('B9DFC655-C29C-4E04-8731-9B0E6E197C56');\r\n public static Feature_LeaveTypeConfiguration: Guid = Guid.parse('FADCC22E-EDE2-4EB0-B929-9B14630D31A0');\r\n public static Feature_ManagePayrollComponent: Guid = Guid.parse('BEF56867-343C-485F-989D-9B157AAFED2F');\r\n public static Feature_ManageWorkItemType: Guid = Guid.parse('E202F210-5592-4881-9534-9B90D9582058');\r\n public static Feature_CanEditOtherEmployeeDetails: Guid = Guid.parse('A701FB6F-F1E3-42B0-9B4D-9B9F7C248F1E');\r\n public static Feature_Authorisation: Guid = Guid.parse('86939EFF-6229-469B-AC9F-9C91FE5B1EDA');\r\n public static Feature_ArchiveExpense: Guid = Guid.parse('496FBF72-200F-47D3-9813-9F074F886CA4');\r\n public static Feature_ReviewFile: Guid = Guid.parse('3E142FFB-CBE5-4C34-A5BE-9FD3C6D037DA');\r\n public static Feature_HourlyTdsConfiguration: Guid = Guid.parse('83B1EF70-F371-42AF-A8C5-A1632033D4B7');\r\n public static Feature_ManageTimeConfigurationSettings: Guid = Guid.parse('027A6BA8-D6E8-493B-995E-A16376101C20');\r\n public static Feature_ViewEmployeeSalaryDetails: Guid = Guid.parse('A5609408-2E26-4D9F-BCF4-A17D6CC7FF6B');\r\n public static Feature_ManageDepartment: Guid = Guid.parse('CFA1FEE1-8AEC-4F59-BC54-A2B729383E85');\r\n public static Feature_ManageContractType: Guid = Guid.parse('BC7411C4-F26C-4B60-9264-A2E1E969B538');\r\n public static Feature_ManageGender: Guid = Guid.parse('891CC46B-CBAF-49A7-9974-A3FD6824C483');\r\n public static Feature_AppManagement: Guid = Guid.parse('DABAE0CE-06C1-49BC-A409-A5390CB3B700');\r\n public static Feature_CanPassAnAnnouncement: Guid = Guid.parse('FF9D085A-3931-49A8-9DAE-A543BA6AA381');\r\n public static Feature_AllFoodOrders: Guid = Guid.parse('8D4F4DD9-5911-4BA9-9A9D-A57B8E27F4E7');\r\n public static Feature_AddOrUpdateEmployeeLicenceDetails: Guid = Guid.parse('7F9A4596-1826-4387-A347-A58DF0734376');\r\n public static Feature_CanSubmitCustomFieldsForProjectManagement: Guid = Guid.parse('33755276-74C6-4253-AA05-A713B28B9FB2');\r\n public static Feature_CanViewAuditNonComplainceReport: Guid = Guid.parse('7FA4281E-9EC9-4AEA-BF8A-A7D613F019EA');\r\n public static Feature_ViewTestrepoReports: Guid = Guid.parse('3D569305-47CE-4674-AC8D-A830B9D1FD2B');\r\n public static Feature_MyAdhocWork: Guid = Guid.parse('C7D3B037-0015-4919-8E26-AB6113E55932');\r\n public static Feature_ViewEmployeePersonalDetails: Guid = Guid.parse('AA7C7DFB-EFA4-483E-8478-AB7DB2AD7E4D');\r\n public static Feature_ApplyLeaveOnBehalfOfOthers: Guid = Guid.parse('CAE857EC-31A9-474C-9BBF-ABCB4E8670DA');\r\n public static Feature_PayrollManagement: Guid = Guid.parse('642D9BD8-610A-426E-86D2-AC66706D7B00');\r\n public static Feature_AddOrUpdateVendor: Guid = Guid.parse('8B28CDA0-0F05-4999-850E-ACBC3856F39D');\r\n public static Feature_EmployeeWorkingDays: Guid = Guid.parse('D0078582-63EC-4D11-B765-ACE25477EE7D');\r\n public static Feature_ManageJobCategory: Guid = Guid.parse('1EBFF0E0-605F-4EDE-8725-ACEA74C55E8D');\r\n public static Feature_BillAmountOnDailyBasis: Guid = Guid.parse('53A073FE-3781-451C-BF0C-ADB4EAC85D10');\r\n public static Feature_FoodOrdersManagement: Guid = Guid.parse('57B2B1C6-D2A9-424E-A131-AE9E48EC6D33');\r\n public static Feature_ArchiveOrUnarchiveAuditQuestions: Guid = Guid.parse('225B86CC-18C1-4BE7-A0B2-AFAFAF6FC770');\r\n public static Feature_ViewCompanyWideLeaves: Guid = Guid.parse('31CC4268-9C82-4CEB-912B-B00D6D5CE89A');\r\n public static Feature_UnarchiveProject: Guid = Guid.parse('CB1BBDB1-6E69-4913-9329-B08CF4AA407E');\r\n public static Feature_ViewEmployeeImmigrationDetails: Guid = Guid.parse('892E870A-A4B7-4A63-8119-B10EAA88A871');\r\n public static Feature_UpdateUser: Guid = Guid.parse('81425352-61DA-47BD-98E6-B133EBE20DA6');\r\n public static Feature_ViewEmployeeLicenceDetails: Guid = Guid.parse('F39D781C-C236-4A14-8B6B-B1BF3520CF9C');\r\n public static Feature_ParkAdhocWork: Guid = Guid.parse('24EE1473-4632-4234-AD10-B1F358F567C4');\r\n public static Feature_DeleteLeave: Guid = Guid.parse('3D2C8442-F298-4169-BA46-B319B6BC929C');\r\n public static Feature_ArchiveOrUnarchiveQuestionType: Guid = Guid.parse('286D2D57-0E8A-4B6F-9F7D-B3518BE4C7E7');\r\n public static Feature_SelectLogTimeReport: Guid = Guid.parse('77542576-004C-4F28-83D3-B39194375246');\r\n public static Feature_EmployeeIndex: Guid = Guid.parse('E3E572EF-F2FD-4643-9982-B4A7ABBC8422');\r\n public static Feature_RecentIndividualFoodOrders: Guid = Guid.parse('3CC69BC9-B410-459E-BF0E-B5172A522FF6');\r\n public static Feature_ManageActivityDashboard: Guid = Guid.parse('9CB69D96-A99A-49C6-B158-B58535897610');\r\n public static Feature_AssetManagement: Guid = Guid.parse('0017687D-B4F5-48EF-BBB1-B5CFEE2906D9');\r\n public static Feature_Chat: Guid = Guid.parse('2D6AAE92-06E4-487A-939E-B5D66D682FE0');\r\n public static Feature_ManageImportOrExportClient: Guid = Guid.parse('8C09C431-9C80-4E69-9869-B5E949BD017E');\r\n public static Feature_ManageSoftLabelConfigurations: Guid = Guid.parse('5EEF57B0-050C-4B2D-AFBD-B70F10DEA233');\r\n public static Feature_ViewAuditActions: Guid = Guid.parse('B6154508-9345-4139-AB3B-B7D0B507B0D2');\r\n public static Feature_GoalsToArchive: Guid = Guid.parse('5F2E2BDC-7943-4217-90C8-B8886B24D9AA');\r\n public static Feature_AddOrUpdateEmployeeLanguages: Guid = Guid.parse('8804FDEA-94DA-4444-8F09-B8CFC55281E8');\r\n public static Feature_ActivelyRunningGoals: Guid = Guid.parse('8CA4A51C-4921-4FA8-8B56-B8CFF868563F');\r\n public static Feature_AllGoalsWithAdvancedSearch: Guid = Guid.parse('C580AF28-8780-4C4D-BAF4-B8EEB7BE4411');\r\n public static Feature_HideDashboard: Guid = Guid.parse('9E47F20C-73BF-43DE-B044-B8FB48CF3B33');\r\n public static Feature_SubmitTimesheet: Guid = Guid.parse('F633A5A4-C36B-4947-AD31-BB4A4BA46F93');\r\n public static Feature_PayrollGenderConfiguration: Guid = Guid.parse('8A856A6D-F5F3-4207-9390-BBDE1E991983');\r\n public static Feature_ApproveOrRejectExpense: Guid = Guid.parse('7F6C2F9E-C678-4544-86AF-BC32D8BB3F1B');\r\n public static Feature_ViewEstimate: Guid = Guid.parse('97478AD6-E466-4A8E-9BF5-BCEC1930AFA8');\r\n public static Feature_CanteenPurchasesSummary: Guid = Guid.parse('7E51EC66-FDE3-4BEB-B7C6-BD3AE84F3AB3');\r\n public static Feature_ViewVendors: Guid = Guid.parse('DE865DBD-B6D6-43AD-A560-BD71F9DA4266');\r\n public static Feature_ViewUsers: Guid = Guid.parse('3722A977-2578-43C3-BBA6-BDF79B741E10');\r\n public static Feature_ManageBoardTypeWorkflow: Guid = Guid.parse('17586DD4-752E-4451-BD0E-BE98C8E22276');\r\n public static Feature_ViewInvoice: Guid = Guid.parse('694E21F0-BC3C-41A9-AADB-BEEA256029C6');\r\n public static Feature_LeavesReport: Guid = Guid.parse('F0310F7F-2194-4E3B-9C80-BF2851340803');\r\n public static Feature_AddOrUpdateEmployeeSalaryDetails: Guid = Guid.parse('7DEED649-510A-436D-8BA4-C03AAAD18EC4');\r\n public static Feature_ViewEmployeeWebAppUsage: Guid = Guid.parse('70D3FBAF-8027-449B-A5F1-C226313DADBA');\r\n public static Feature_ViewRoster: Guid = Guid.parse('F0D5BA0D-464F-4019-849C-C27E4681BD78');\r\n public static Feature_ManageFeedback: Guid = Guid.parse('C3952AAF-4448-4DEA-8C84-C28FCD822364');\r\n public static Feature_OffersCreditedToUsersSummary: Guid = Guid.parse('4FEFF215-0FDC-4592-A942-C36AE2B94C9E');\r\n public static Feature_QaPerformance: Guid = Guid.parse('68A49F78-4DB9-4F7D-B302-C3ED039F5B4C');\r\n public static Feature_AllowanceTime: Guid = Guid.parse('3B2AFE42-A447-454D-8873-C42E218FBFFD');\r\n public static Feature_AddOrUpdateAudit: Guid = Guid.parse('153A2C6F-40EE-438E-8CF0-C499F30042AB');\r\n public static Feature_ManageProjectRolePermissions: Guid = Guid.parse('CDB3341D-78A1-43F5-989B-C4C7DF8133CA');\r\n public static Feature_ManageMerchant: Guid = Guid.parse('D54EF735-0454-426A-AC2B-C5022EC3832F');\r\n public static Feature_AddDashboard: Guid = Guid.parse('997B1D56-8559-41EF-A7C9-C50ACB123697');\r\n public static Feature_AddOrUpdateTrainingCourse: Guid = Guid.parse('60D74B68-47D9-4D4E-A624-C59910283289');\r\n public static Feature_ResetOthersPassword: Guid = Guid.parse('4B3AE462-92E1-4C49-88B9-C7067F93AC9B');\r\n public static Feature_ManageEmployeeRatesheet: Guid = Guid.parse('A2BF7CDA-EF3B-49D6-B1E4-C786CE15BB9B');\r\n public static Feature_AddOrUpdateEmployeeContactDetails: Guid = Guid.parse('368B22EE-2089-4AB6-A400-C8ABDD34D886');\r\n public static Feature_ViewAllEmployees: Guid = Guid.parse('6370060E-FB2D-426B-B057-C8F246DF9CBB');\r\n public static Feature_LeaveEncashmentSettings: Guid = Guid.parse('886D492F-D091-452B-88FE-CA4B13DBFF2A');\r\n public static Feature_ManageGoalReplanType: Guid = Guid.parse('61007E4C-7B0F-48A0-A726-CC485B6CB2A1');\r\n public static Feature_ManageTestcaseType: Guid = Guid.parse('36414F52-41BA-4640-B59F-CC71241DBC2D');\r\n public static Feature_ManageCompanyIntroducedByOption: Guid = Guid.parse('7E00AC86-7C91-4794-A268-CD7547CE8F33');\r\n public static Feature_ViewEmployeeEmergencyContactDetails: Guid = Guid.parse('11AF3467-BEC6-45A6-9F73-CDB4F929C346');\r\n public static Feature_ConfigureEmployeePayrollTemplates: Guid = Guid.parse('82E88771-B74E-46C2-AFE9-CDCB10D653B0');\r\n public static Feature_MangeNationalities: Guid = Guid.parse('EF993FE2-E6E2-4222-B7AC-CDDE6078BDF0');\r\n public static Feature_ViewApplications: Guid = Guid.parse('B6A89133-F7EA-4846-A9B9-CF0B07C8751C');\r\n public static Feature_ConfigureEmployeeTracking: Guid = Guid.parse('D5C91A1A-D04B-4FF5-92F8-CF6AF30C9BEE');\r\n public static Feature_UserHistoricalReport: Guid = Guid.parse('A860BC87-85B4-428E-836D-CF733C6B677D');\r\n public static Feature_ManageMainUseCase: Guid = Guid.parse('A08125F4-0FA4-400F-9B35-CF7E2595FA2E');\r\n public static Feature_ViewUserStatusHistory: Guid = Guid.parse('92CE56F9-26FF-4E9C-A974-CF9F0490D4A6');\r\n public static Feature_ManageActivityScreenshots: Guid = Guid.parse('E3E6E572-2CDD-4077-9164-CFF274BAB507');\r\n public static Feature_ManageTimeZone: Guid = Guid.parse('16881033-B027-4477-BE6B-D0CB0DBD3D21');\r\n public static Feature_ManageLanguages: Guid = Guid.parse('0A72C152-55D5-4E4A-927D-D1A292914074');\r\n public static Feature_ManageSubscriptionPaidBy: Guid = Guid.parse('09E6746A-C4A4-46C9-B3FB-D2672C9607C2');\r\n public static Feature_ConductForm: Guid = Guid.parse('8EBA255A-7973-43D9-BE0F-D2ABDFC281A7');\r\n public static Feature_LateEmployeesCountVsDate: Guid = Guid.parse('F16639B3-D220-4794-8B94-D4A6FC227316');\r\n public static Feature_AssignAssetsToEmployee: Guid = Guid.parse('FB695ABC-CB26-4E36-AD0E-D4E0F40F7354');\r\n public static Feature_EmployeeAttendence: Guid = Guid.parse('015319B6-D705-4676-B3A6-D637A7081761');\r\n public static Feature_ActivityReport: Guid = Guid.parse('82CC4ED8-919E-42CE-8FA4-D66A322F063C');\r\n public static Feature_DevQuality: Guid = Guid.parse('DA71CB6D-2758-4528-BBFF-D6F31EBB80B1');\r\n public static Feature_ApproveRoster: Guid = Guid.parse('FEBDDCA7-8581-4701-B80D-D77CB603F30F');\r\n public static Feature_ViewFeedback: Guid = Guid.parse('21C33A76-B4BE-48D2-8965-D84F5B94DAB8');\r\n public static Feature_ImminentDeadlines: Guid = Guid.parse('ECA49F6E-A93E-472B-A792-DA759CED660E');\r\n public static Feature_ArchiveMessage: Guid = Guid.parse('7E1925C3-2ED3-4295-A0E2-DB47AF9214E7');\r\n public static Feature_ArchiveOrUnarchiveMasterQuestionType: Guid = Guid.parse('9766BAEA-2FA5-4ACA-939F-DBA85F4E1058');\r\n public static Feature_RoomTemperature: Guid = Guid.parse('B126C444-24D6-4BF1-A91C-DBBC314C3872');\r\n public static Feature_ManageShifttiming: Guid = Guid.parse('21B790A1-6ABE-44A2-93EA-DBD38ED7A5A3');\r\n public static Feature_ViewOrManageInvoiceStatus: Guid = Guid.parse('1DA2769E-2A76-4A39-A1FD-DCAB9983647C');\r\n public static Feature_ManagePayrollTemplate: Guid = Guid.parse('40F9CFEC-717E-4091-837F-DCB1219326A1');\r\n public static Feature_ViewAuditReports: Guid = Guid.parse('ED85308F-3C2C-45B0-BBBE-DCB5AE10619D');\r\n public static Feature_EditStores: Guid = Guid.parse('3A7F384D-7D9C-4C74-AB31-DCE678C9FCA7');\r\n public static Feature_ViewAssetsWithAdvancedSearch: Guid = Guid.parse('D40387DA-C5BC-4512-93C5-DD0D2BDD83C9');\r\n public static Feature_ViewPermissions: Guid = Guid.parse('177D8CD2-AE16-4289-8453-DD4431FD20BE');\r\n public static Feature_Applications: Guid = Guid.parse('438C6F61-CA8A-4AE9-8D29-DDF92F30FF01');\r\n public static Feature_CanAnswerQuestions: Guid = Guid.parse('D7AA491F-52D0-4CA1-9AD3-DE125EB6287B');\r\n public static Feature_SubmitAudit: Guid = Guid.parse('58212141-93E5-4F9F-96B2-DE2E52B7409B');\r\n public static Feature_PayrollBranchConfiguration: Guid = Guid.parse('61312A34-7556-4A1E-9FEF-DFB2B592B7FF');\r\n public static Feature_ConfigurePerformance: Guid = Guid.parse('C3DE241D-F502-4D86-9B89-DFCDC3DF6ED5');\r\n public static Feature_ManageSkills: Guid = Guid.parse('356CA902-C88A-41B2-A976-E08289AF01E3');\r\n public static Feature_ViewLiveDashboard: Guid = Guid.parse('60F55765-521B-42F7-A6E0-E0B16538AEC3');\r\n public static Feature_AddFoodOrder: Guid = Guid.parse('14DE641A-B105-4FA6-A655-E16B265A2BEA');\r\n public static Feature_PayrollRunEmployee: Guid = Guid.parse('FBC1FD87-EBE4-4181-AF08-E2DAE768C8E9');\r\n public static Feature_ManagePaymentType: Guid = Guid.parse('32A2F1A9-B85F-4621-BF8E-E426A5534666');\r\n public static Feature_ViewEmployeeAppTrackerCompleteReport: Guid = Guid.parse('C0621DE0-2F3F-44FC-9D02-E46597EFE300');\r\n public static Feature_ManageHrManagement: Guid = Guid.parse('D02A0437-2541-4134-83C0-E4B68127D830');\r\n public static Feature_EmployeeTaxAllowanceDetails: Guid = Guid.parse('BEE9D8FD-BC11-49ED-915F-E5F554A3C66D');\r\n public static Feature_ViewStatusReportingConfiguration: Guid = Guid.parse('8C91A450-4FB3-4D80-98F4-E67648E60862');\r\n public static Feature_EmployeeBonus: Guid = Guid.parse('7121765F-5B22-4FBC-9975-E6BD1B66F21D');\r\n public static Feature_AddOrUpdateEmployeeShifts: Guid = Guid.parse('26A3ADE1-2F97-4FC1-874C-E6C063B5762D');\r\n public static Feature_ViewAllAdhocWorks: Guid = Guid.parse('02CCA450-E08F-4871-9DA0-E6DA4285C382');\r\n public static Feature_EmployeeResignation: Guid = Guid.parse('973B4192-D284-4EE6-AF7F-E714247A4CEC');\r\n public static Feature_AddOrEditCustomFieldsForHrManagement: Guid = Guid.parse('D7A843D5-4E31-4E82-AEA5-E77B22E24613');\r\n public static Feature_ViewFoodOrders: Guid = Guid.parse('D5694B15-8C1D-4D0C-9543-E7E75E44F05D');\r\n public static Feature_AddOrUpdateEstimate: Guid = Guid.parse('634D217D-9A66-4107-9539-E82FEE70AF78');\r\n public static Feature_DaysOfWeekConfiguration: Guid = Guid.parse('7CD55073-755E-4126-A4B7-E880BA223AC3');\r\n public static Feature_CanAccessPerformance: Guid = Guid.parse('5040A778-B439-4C29-8C46-E8C5D34C3414');\r\n public static Feature_ViewOverallAuditActivity: Guid = Guid.parse('3E9F78E8-3100-4A78-A7EB-E91D19A3DDBA');\r\n public static Feature_PayrollFrequency: Guid = Guid.parse('25391559-1629-4772-BB51-E94A834C1774');\r\n public static Feature_ViewMonthlyPayrollDetails: Guid = Guid.parse('D0AE20C9-BF9C-4389-8904-E9557D7B498F');\r\n public static Feature_SnapLiveDashboard: Guid = Guid.parse('A3726A74-D39C-4791-8057-F0C1862FA08D');\r\n public static Feature_ViewAuditConductTimelineReport: Guid = Guid.parse('23DA003F-D1FC-4AC5-B051-F1F1A4D9DD16');\r\n public static Feature_ManageHoliday: Guid = Guid.parse('E3A243DB-9E1A-4D74-8CAE-F22B47696679');\r\n public static Feature_AddOrUpdateEmploymentContract: Guid = Guid.parse('A4FD2D93-CAA7-44B5-806F-F45DB6AE1322');\r\n public static Feature_ViewListOfAssets: Guid = Guid.parse('0777C967-C399-4766-B1E6-F4C54AC0615A');\r\n public static Feature_ManageProjectType: Guid = Guid.parse('AF4EC845-3D4A-4010-B968-F701A878673D');\r\n public static Feature_CanViewAuditComplainceReport: Guid = Guid.parse('BA2464BF-C6F9-4B3B-995E-F7833FEA70B0');\r\n public static Feature_ManageDashboards: Guid = Guid.parse('A52A9252-52FF-4795-9627-F910450C48EB');\r\n public static Feature_CanViewNumberOfAuditsSubmitted: Guid = Guid.parse('049CFA7D-BC33-45B6-BB38-F94479A51CA2');\r\n public static Feature_TrainingManagement: Guid = Guid.parse('D6418CAB-48C7-491D-B1DF-F9A30CBEBD46');\r\n public static Feature_UploadFiles: Guid = Guid.parse('AB204D2C-2577-43EE-98A0-FA87A85CFE99');\r\n public static Feature_WorkAllocationSummary: Guid = Guid.parse('D3ACE3D7-9DC8-4672-9DDD-FB18CDC88E68');\r\n public static Feature_AddOrUpdateEmployeeMemberships: Guid = Guid.parse('F38B833B-D383-48D5-A0F0-FBB399F61C47');\r\n public static Feature_ViewMyWorkWithAdvancedSearch: Guid = Guid.parse('06C2FB6B-8225-4B04-B700-FE50D5DD70F3');\r\n public static Feature_ViewCompanyDetails: Guid = Guid.parse('FD29AEFC-42A6-4866-82A9-FE843D36D380');\r\n public static Feature_ChatFileUpload: Guid = Guid.parse('C7F4B971-1B74-440D-9253-FEC951CC77D1');\r\n public static Feature_MyProjectWork: Guid = Guid.parse('D4220276-C1C7-4B45-AB38-FF326BB37908');\r\n public static Feature_DeletePermissions: Guid = Guid.parse('371FE420-4525-4D53-B977-FF5B6A6CDD90');\r\n public static Feature_ManageExpenseCategory: Guid = Guid.parse('CCA06C43-92A4-4D45-AE25-FFBD4450FD6C');\r\n public static Feature_ViewTrainingRecord: Guid = Guid.parse('8E7CAC53-4831-40B7-AB4C-3F4F8F084751');\r\n\r\n public static Feature_ManageSystemExports: Guid = Guid.parse('38CED01C-DB50-4999-ABC3-EAE960DD51DB');\r\n public static Feature_ManageSystemImports: Guid = Guid.parse('2B447F3A-8022-43A7-B145-731D5F6678F6');\r\n public static Feature_ManageOverAllCompanySettings: Guid = Guid.parse('5E73B957-3BCE-4B54-825E-C28417B57F11');\r\n public static Feature_ManageAccountsAndBilling: Guid = Guid.parse('D3C8C1AD-7DE2-42A9-A67C-54E4DAF075E2');\r\n public static Feature_ViewActivityReportsForAllEmployee: Guid = Guid.parse('AE34EE14-7BEB-4ECB-BCE8-5F6588DF57E5');\r\n\r\n}\r\n","export const LocalStorageProperties = {\r\n CurrentUserId: 'CurrentUserId',\r\n CurrentUser: 'CurrentUser',\r\n CurrentCulture: 'CurrentCulture',\r\n CompanyId: 'CompanyId',\r\n CompanyName: 'CompanyName',\r\n CompanyMainLogo: 'CompanyMainLogo',\r\n CompanyMiniLogo: 'CompanyMiniLogo',\r\n DefaultDashboard: 'DefaultDashboard',\r\n CompanyDetails: 'CompanyDetails',\r\n CompanySettings: 'CompanySettings',\r\n FromLogIn: 'FromLogIn',\r\n CompanyTheme: 'CompanyTheme',\r\n SearchClick: 'SearchClick',\r\n RoleFeatures: 'RoleFeatures',\r\n UserRoleFeatures: 'UserRoleFeatures',\r\n EntityRoleFeatures: 'EntityRoleFeatures',\r\n SoftLabels: 'SoftLabels',\r\n RecentSearches: 'RecentSearches',\r\n Dashboards: 'Dashboards',\r\n ExpensesFileCount: 'ExpensesFilesCount',\r\n UserModel: 'UserModel',\r\n Environment: 'Environment',\r\n AddOrEditCustomAppIsRequired: 'AddOrEditCustomAppIsRequired',\r\n LoadFavouriteWidgets: \"LoadFavouriteWidgets\",\r\n LoadRecentSearches: \"LoadRecentSearches\",\r\n MenuItems: 'MenuItems',\r\n FavouriteWidgets: 'FavouriteWidgets',\r\n UserReferenceId: 'UserReferenceId',\r\n UserLoggedInCount: 'UserLoggedInCount',\r\n DisplayWelComeNote: 'DisplayWelComeNote',\r\n RedirectionUrl: 'RedirectionUrl',\r\n SideBarMenuItems: 'SideBarMenuItems',\r\n ChatId: 'ChatId',\r\n IntroModules: 'IntroModules',\r\n EnableTeamDashboard: 'EnableTeamDashboard'\r\n}","import { Component, OnInit } from \"@angular/core\";\r\nimport { FeatureIds } from '../constants/feature-ids';\r\nimport * as _ from \"underscore\";\r\nimport { LocalStorageProperties } from '../constants/localstorage-properties';\r\n\r\n@Component({\r\n template: \"\"\r\n})\r\nexport class CustomAppBaseComponent implements OnInit {\r\n canAccess_feature_ManageRegion: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeJob: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveInvoice: Boolean;\r\n canAccess_feature_ManageTimeFormat: Boolean;\r\n canAccess_feature_ViewLeaves: Boolean;\r\n canAccess_feature_ManageTestcaseAutomationType: Boolean;\r\n canAccess_feature_ManagePeakHour: Boolean;\r\n canAccess_feature_ManageEducationLevels: Boolean;\r\n canAccess_feature_MyWork: Boolean;\r\n canAccess_feature_Notifications: Boolean;\r\n canAccess_feature_StatusReporting: Boolean;\r\n canAccess_feature_AddOrUpdateAuditCategory: Boolean;\r\n canAccess_feature_ViewEmployeeContactDetails: Boolean;\r\n canAccess_feature_ManageMasterSettings: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveAuditReports: Boolean;\r\n canAccess_feature_ViewAuditConducts: Boolean;\r\n canAccess_feature_AddOrUpdateExpense: Boolean;\r\n canAccess_feature_ViewBadgesAssignedToEmployee: Boolean;\r\n canAccess_feature_HrManagement: Boolean;\r\n canAccess_feature_TaxSlabs: Boolean;\r\n canAccess_feature_ViewEmployeeBankDetails: Boolean;\r\n canAccess_feature_MarkDamagedAssest: Boolean;\r\n canAccess_feature_WorkItemsHavingOthersDependency: Boolean;\r\n canAccess_feature_ViewPayrollReports: Boolean;\r\n canAccess_feature_ManageDocumentTemplates: Boolean;\r\n canAccess_feature_ManageAccessibleIpAdresses: Boolean;\r\n canAccess_feature_ManageCompanyIntroducedByOption: Boolean;\r\n canAccess_feature_ManageCompanyLocation: Boolean;\r\n canAccess_feature_ManageDateFormat: Boolean;\r\n canAccess_feature_ManageMainUseCase: Boolean;\r\n canAccess_feature_ManageNumberFormat: Boolean;\r\n canAccess_feature_ManageExpenseCategory: Boolean;\r\n canAccess_feature_ManageMerchant: Boolean;\r\n canAccess_feature_ManageBranch: Boolean;\r\n canAccess_feature_ManageContractType: Boolean;\r\n canAccess_feature_ManageCountry: Boolean;\r\n canAccess_feature_ManageCurrency: Boolean;\r\n canAccess_feature_ManageDepartment: Boolean;\r\n canAccess_feature_ManageDesignation: Boolean;\r\n canAccess_feature_ManageEmploymentType: Boolean;\r\n canAccess_feature_ManageJobCategory: Boolean;\r\n canAccess_feature_ManageLanguages: Boolean;\r\n canAccess_feature_ManageLicenceType: Boolean;\r\n canAccess_feature_ManageMemberships: Boolean;\r\n canAccess_feature_MangeNationalities: Boolean;\r\n canAccess_feature_ManagePaygrade: Boolean;\r\n canAccess_feature_ManagePayFrequency: Boolean;\r\n canAccess_feature_ManagePaymentMethod: Boolean;\r\n canAccess_feature_ManagePaymentType: Boolean;\r\n canAccess_feature_ManageRateType: Boolean;\r\n canAccess_feature_ManageRateSheet: Boolean;\r\n canAccess_feature_ManageReportingMethods: Boolean;\r\n canAccess_feature_ManageShifttiming: Boolean;\r\n canAccess_feature_ManageSkills: Boolean;\r\n canAccess_feature_ManageSoftLabelConfigurations: Boolean;\r\n canAccess_feature_ManageState: Boolean;\r\n canAccess_feature_ManageTimeZone: Boolean;\r\n canAccess_feature_ManageWebhook: Boolean;\r\n canAccess_feature_ManageAppSettings: Boolean;\r\n canAccess_feature_ManageTimeConfigurationSettings: Boolean;\r\n canAccess_feature_ManageFormType: Boolean;\r\n canAccess_feature_ManageTestcaseStatus: Boolean;\r\n canAccess_feature_ManageTestcaseType: Boolean;\r\n canAccess_feature_ManageButtonType: Boolean;\r\n canAccess_feature_ManageFeedBackType: Boolean;\r\n canAccess_feature_ManagePermissionReason: Boolean;\r\n canAccess_feature_BoardTypeApi: Boolean;\r\n canAccess_feature_ManageBoardTypeWorkflow: Boolean;\r\n canAccess_feature_ManageProcessDashboardStatus: Boolean;\r\n canAccess_feature_WorkflowManagement: Boolean;\r\n canAccess_feature_ManageBugPriority: Boolean;\r\n canAccess_feature_ManageGoalReplanType: Boolean;\r\n canAccess_feature_ManageProjectType: Boolean;\r\n canAccess_feature_ManageWorkItemReplanType: Boolean;\r\n canAccess_feature_ManageWorkItemStatus: Boolean;\r\n canAccess_feature_ManageWorkItemSubType: Boolean;\r\n canAccess_feature_ManageWorkItemType: Boolean;\r\n canAccess_feature_ViewTrainingCourses: Boolean;\r\n canAccess_feature_EmployeeSpentTime: Boolean;\r\n canAccess_feature_PayrollCalculationConfigurations: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeDependentContactDetails: Boolean;\r\n canAccess_feature_ContractPaySettings: Boolean;\r\n canAccess_feature_AddOrUpdateAuditQuestions: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeSkills: Boolean;\r\n canAccess_feature_ManageExpenseManagement: Boolean;\r\n canAccess_feature_CreateRoster: Boolean;\r\n canAccess_feature_AssignOrUnassignTrainingCourse: Boolean;\r\n canAccess_feature_EmployeeAccountDetails: Boolean;\r\n canAccess_feature_EmployeeLoans: Boolean;\r\n canAccess_feature_AbilityToChat: Boolean;\r\n canAccess_feature_EmployeeWorkAllocation: Boolean;\r\n canAccess_feature_ViewEmployeeShiftDetails: Boolean;\r\n canAccess_feature_ViewEmployeeLanguageDetails: Boolean;\r\n canAccess_feature_ManageMaritalStatuses: Boolean;\r\n canAccess_feature_AddOrUpdateFoodItem: Boolean;\r\n canAccess_feature_ManageHtmltemplate: Boolean;\r\n canAccess_feature_AddOrUpdateAsset: Boolean;\r\n canAccess_feature_AddOrEditEmployeeLoanInstallment: Boolean;\r\n canAccess_feature_AddOrUpdateAuditReports: Boolean;\r\n canAccess_feature_ConfigurePayrollStatus: Boolean;\r\n canAccess_feature_UpsertCompanyDetails: Boolean;\r\n canAccess_feature_ViewEmploymentContractDetails: Boolean;\r\n canAccess_feature_DownloadOrShareInvoice: Boolean;\r\n canAccess_feature_ViewAudit: Boolean;\r\n canAccess_feature_EditMessage: Boolean;\r\n canAccess_feature_ApproveOrRejectLeave: Boolean;\r\n canAccess_feature_SpentTimeDetails: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveAudit: Boolean;\r\n canAccess_feature_ViewEmployeeWorkExperienceDetails: Boolean;\r\n canAccess_feature_ProfessionalTaxRanges: Boolean;\r\n canAccess_feature_EnableNotifications: Boolean;\r\n canAccess_feature_TdsSettings: Boolean;\r\n canAccess_feature_ViewExpenses: Boolean;\r\n canAccess_feature_EmployeeLogtimeDetailsReport: Boolean;\r\n canAccess_feature_CreditAmount: Boolean;\r\n canAccess_feature_AllGoals: Boolean;\r\n canAccess_feature_AddOrUpdateAssignmentStatus: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveAuditConduct: Boolean;\r\n canAccess_feature_ViewEmployeeActivityTimeUsage: Boolean;\r\n canAccess_feature_ProcessDashboard: Boolean;\r\n canAccess_feature_ManageTimeSheetManagement: Boolean;\r\n canAccess_feature_ManageCompanySettings: Boolean;\r\n canAccess_feature_AccessTestrepo: Boolean;\r\n canAccess_feature_CanAssignAuditTags: Boolean;\r\n canAccess_feature_AddOrEditLeaveType: Boolean;\r\n canAccess_feature_EveryDayTargetStatus: Boolean;\r\n canAccess_feature_ArchiveProject: Boolean;\r\n canAccess_feature_DirectMessaging: Boolean;\r\n canAccess_feature_ViewStores: Boolean;\r\n canAccess_feature_ApplyLeave: Boolean;\r\n canAccess_feature_ManageInvoiceSchedule: Boolean;\r\n canAccess_feature_AssignAdhocWorkToAllUsers: Boolean;\r\n canAccess_feature_CanChangeVisualisationType: Boolean;\r\n canAccess_feature_AddOrUpdateClient: Boolean;\r\n canAccess_feature_AddOrUpdateInvoice: Boolean;\r\n canAccess_feature_RecentlyPurchasedAssets: Boolean;\r\n canAccess_feature_CanCreateReminders: Boolean;\r\n canAccess_feature_ViewRoles: Boolean;\r\n canAccess_feature_AddOrUpdateMasterQuestionType: Boolean;\r\n canAccess_feature_ManageRelationShip: Boolean;\r\n canAccess_feature_PayrollRun: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveAuditCategory: Boolean;\r\n canAccess_feature_DragApps: Boolean;\r\n canAccess_feature_ArchiveSubmittedStatusReport: Boolean;\r\n canAccess_feature_CanViewOrganizationChart: Boolean;\r\n canAccess_feature_DeleteCustomFieldsForHrManagement: Boolean;\r\n canAccess_feature_EditPayslip: Boolean;\r\n canAccess_feature_ViewEmployeeCredits: Boolean;\r\n canAccess_feature_FinancialYearConfigurations: Boolean;\r\n canAccess_feature_TestrepoManagement: Boolean;\r\n canAccess_feature_DocumentManagement: Boolean;\r\n canAccess_feature_ApproveEmployeeTaxAllowances: Boolean;\r\n canAccess_feature_ViewEmployeeReportToDetails: Boolean;\r\n canAccess_feature_AddOrEditCustomFieldsForProjectManagement: Boolean;\r\n canAccess_feature_AddOrUpdateStatusReportingConfiguration: Boolean;\r\n canAccess_feature_UserUpload: Boolean;\r\n canAccess_feature_LateEmployee: Boolean;\r\n canAccess_feature_ViewEmployeeLoanInstallment: Boolean;\r\n canAccess_feature_ViewEmployeeMembershipDetails: Boolean;\r\n canAccess_feature_RecentlyAssignedAssets: Boolean;\r\n canAccess_feature_EmployeesCurrentWorkingOrBacklogWorkItems: Boolean;\r\n canAccess_feature_ViewStatusReports: Boolean;\r\n canAccess_feature_ResignationStatus: Boolean;\r\n canAccess_feature_Venue: Boolean;\r\n canAccess_feature_ViewRoomTemperature: Boolean;\r\n canAccess_feature_UpdateFoodOrder: Boolean;\r\n canAccess_feature_CanSubmitCustomFieldsForHrManagement: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveEstimate: Boolean;\r\n canAccess_feature_ManageLeavesManagement: Boolean;\r\n canAccess_feature_AddOrUpdateChannel: Boolean;\r\n canAccess_feature_ViewForms: Boolean;\r\n canAccess_feature_CanteenManagement: Boolean;\r\n canAccess_feature_ProjectsActivelyRunningGoals: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeImmigration: Boolean;\r\n canAccess_feature_AlternateSignIn: Boolean;\r\n canAccess_feature_ManageActivityTracker: Boolean;\r\n canAccess_feature_RecentlyDamagedAssets: Boolean;\r\n canAccess_feature_AssetHistory: Boolean;\r\n canAccess_feature_ProjectManagement: Boolean;\r\n canAccess_feature_ManageAppsAndUrls: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeBankDetails: Boolean;\r\n canAccess_feature_ArchiveForm: Boolean;\r\n canAccess_feature_ShareExpense: Boolean;\r\n canAccess_feature_ManageSystemApps: Boolean;\r\n canAccess_feature_BookingManagement: Boolean;\r\n canAccess_feature_GoalLevelReports: Boolean;\r\n canAccess_feature_ViewEmployeeEducationDetails: Boolean;\r\n canAccess_feature_ManageLeaveStatus: Boolean;\r\n canAccess_feature_ArchiveUser: Boolean;\r\n canAccess_feature_ViewTrackedInformationOfUserstory: Boolean;\r\n canAccess_feature_AddUser: Boolean;\r\n canAccess_feature_LeaveManagement: Boolean;\r\n canAccess_feature_ViewProjects: Boolean;\r\n canAccess_feature_ApproveOrRejectTimesheet: Boolean;\r\n canAccess_feature_RoleManagement: Boolean;\r\n canAccess_feature_CopyOrMoveQuestions: Boolean;\r\n canAccess_feature_ManageCustomFormSubmissions: Boolean;\r\n canAccess_feature_ViewLocations: Boolean;\r\n canAccess_feature_ManageInductionWork: Boolean;\r\n canAccess_feature_ViewAllEmployeeActivityReports: Boolean;\r\n canAccess_feature_DownloadEmployeeSalaryCertificate: Boolean;\r\n canAccess_feature_ManageTestrepoManagement: Boolean;\r\n canAccess_feature_ManageCompanyStructure: Boolean;\r\n canAccess_feature_ViewRecentlyActiveClients: Boolean;\r\n canAccess_feature_ManageRoster: Boolean;\r\n canAccess_feature_EmployeeWorkLogReport: Boolean;\r\n canAccess_feature_DownloadOrShareAuditReports: Boolean;\r\n canAccess_feature_ConfigureWebhooks: Boolean;\r\n canAccess_feature_ManageStoreManagement: Boolean;\r\n canAccess_feature_AddOrUpdateProduct: Boolean;\r\n canAccess_feature_CreateFolder: Boolean;\r\n canAccess_feature_PayrollTemplateConfiguration: Boolean;\r\n canAccess_feature_AssetsAllocatedToMe: Boolean;\r\n canAccess_feature_EmployeeCreditorDetails: Boolean;\r\n canAccess_feature_ApproveEmployeeLoans: Boolean;\r\n canAccess_feature_ViewEmployeeSkillDetails: Boolean;\r\n canAccess_feature_CanViewUsersCanteenSummary: Boolean;\r\n canAccess_feature_WorkAllocation: Boolean;\r\n canAccess_feature_AddPermission: Boolean;\r\n canAccess_feature_ViewTodaysTimesheet: Boolean;\r\n canAccess_feature_CanAssignBadgeToEmployee: Boolean;\r\n canAccess_feature_ViewEmployeeJobDetails: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeWorkExperienceDetails: Boolean;\r\n canAccess_feature_DoChannelChatOnly: Boolean;\r\n canAccess_feature_UpdatePermission: Boolean;\r\n canAccess_feature_Security: Boolean;\r\n canAccess_feature_SubmitStatusReport: Boolean;\r\n canAccess_feature_Audit: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeEmergencyContactDetails: Boolean;\r\n canAccess_feature_BugReport: Boolean;\r\n canAccess_feature_TaxAllowance: Boolean;\r\n canAccess_feature_AssetComment: Boolean;\r\n canAccess_feature_ViewEmployeeDependentContactDetails: Boolean;\r\n canAccess_feature_PurchaseFoodItem: Boolean;\r\n canAccess_feature_ViewTrainingAssignments: Boolean;\r\n canAccess_feature_ViewTimesheetFeed: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeReportingToDetails: Boolean;\r\n canAccess_feature_PayrollRoleConfiguration: Boolean;\r\n canAccess_feature_DashboardManagement: Boolean;\r\n canAccess_feature_WorkItemsHavingDependencyOnMe: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeEducationDetails: Boolean;\r\n canAccess_feature_ArchiveRole: Boolean;\r\n canAccess_feature_TimeSheetManagement: Boolean;\r\n canAccess_feature_AddOrUpdateApplications: Boolean;\r\n canAccess_feature_PublishAsDefault: Boolean;\r\n canAccess_feature_ViewMasterQuestionTypes: Boolean;\r\n canAccess_feature_ViewProductDetails: Boolean;\r\n canAccess_feature_DeleteCustomFieldsForProjectManagement: Boolean;\r\n canAccess_feature_ManageAuthorization: Boolean;\r\n canAccess_feature_ManageCustomApps: Boolean;\r\n canAccess_feature_FoodItemsList: Boolean;\r\n canAccess_feature_AddOrUpdateForm: Boolean;\r\n canAccess_feature_ArchiveAdhocWork: Boolean;\r\n canAccess_feature_ManageLeaveSession: Boolean;\r\n canAccess_feature_WorkItemUpload: Boolean;\r\n canAccess_feature_CanApprovePerformance: Boolean;\r\n canAccess_feature_AddOrUpdateLocation: Boolean;\r\n canAccess_feature_ManageRestrictionType: Boolean;\r\n canAccess_feature_ManageLeaveFormula: Boolean;\r\n canAccess_feature_EmployeeWorkItems: Boolean;\r\n canAccess_feature_BillingManagement: Boolean;\r\n canAccess_feature_EditDashboard: Boolean;\r\n canAccess_feature_ViewTrainingMatrix: Boolean;\r\n canAccess_feature_ManageAppFilters: Boolean;\r\n canAccess_feature_ManageLeaveType: Boolean;\r\n canAccess_feature_ArchiveStatusReportConfiguration: Boolean;\r\n canAccess_feature_ResetPassword: Boolean;\r\n canAccess_feature_EditRoster: Boolean;\r\n canAccess_feature_AbilityToCreatePublicProject: Boolean;\r\n canAccess_feature_PayrollMaritalStatusConfiguration: Boolean;\r\n canAccess_feature_AddProject: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeJobDetails: Boolean;\r\n canAccess_feature_AddOrUpdateAdhocWork: Boolean;\r\n canAccess_feature_ForgotPassword: Boolean;\r\n canAccess_feature_LogTimeReport: Boolean;\r\n canAccess_feature_DeleteDashboard: Boolean;\r\n canAccess_feature_ViewQuestionTypes: Boolean;\r\n canAccess_feature_ViewHistoricalTimesheet: Boolean;\r\n canAccess_feature_WorkItemsWaitingForQaApproval: Boolean;\r\n canAccess_feature_InviteeForSignature: Boolean;\r\n canAccess_feature_AddOrUpdateRole: Boolean;\r\n canAccess_feature_CanCloneAudit: Boolean;\r\n canAccess_feature_ArchiveTrainingCourse: Boolean;\r\n canAccess_feature_PunchCard: Boolean;\r\n canAccess_feature_ManageActivityConfig: Boolean;\r\n canAccess_feature_OrganizationChart: Boolean;\r\n canAccess_feature_DashboardMenuItem: Boolean;\r\n canAccess_feature_FeatureUsageReport: Boolean;\r\n canAccess_feature_ActivityTracker: Boolean;\r\n canAccess_feature_DeleteGoalFilter: Boolean;\r\n canAccess_feature_EmployeePresence: Boolean;\r\n canAccess_feature_ManageProjectManagement: Boolean;\r\n canAccess_feature_ManageField: Boolean;\r\n canAccess_feature_ViewApplicationUsageReports: Boolean;\r\n canAccess_feature_AddOrUpdateTimesheetentry: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeePersonalDetails: Boolean;\r\n canAccess_feature_AddOrUpdateQuestionType: Boolean;\r\n canAccess_feature_ViewFiles: Boolean;\r\n canAccess_feature_AddOrUpdateAuditConduct: Boolean;\r\n canAccess_feature_EmployeePayrollDetails: Boolean;\r\n canAccess_feature_ManageBadges: Boolean;\r\n canAccess_feature_LeaveTypeConfiguration: Boolean;\r\n canAccess_feature_ManagePayrollComponent: Boolean;\r\n canAccess_feature_CanEditOtherEmployeeDetails: Boolean;\r\n canAccess_feature_Authorisation: Boolean;\r\n canAccess_feature_ArchiveExpense: Boolean;\r\n canAccess_feature_ReviewFile: Boolean;\r\n canAccess_feature_HourlyTdsConfiguration: Boolean;\r\n canAccess_feature_ViewEmployeeSalaryDetails: Boolean;\r\n canAccess_feature_ManageGender: Boolean;\r\n canAccess_feature_AppManagement: Boolean;\r\n canAccess_feature_CanPassAnAnnouncement: Boolean;\r\n canAccess_feature_AllFoodOrders: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeLicenceDetails: Boolean;\r\n canAccess_feature_CanSubmitCustomFieldsForProjectManagement: Boolean;\r\n canAccess_feature_CanViewAuditNonComplainceReport: Boolean;\r\n canAccess_feature_ViewTestrepoReports: Boolean;\r\n canAccess_feature_MyAdhocWork: Boolean;\r\n canAccess_feature_ViewEmployeePersonalDetails: Boolean;\r\n canAccess_feature_ApplyLeaveOnBehalfOfOthers: Boolean;\r\n canAccess_feature_PayrollManagement: Boolean;\r\n canAccess_feature_AddOrUpdateVendor: Boolean;\r\n canAccess_feature_EmployeeWorkingDays: Boolean;\r\n canAccess_feature_BillAmountOnDailyBasis: Boolean;\r\n canAccess_feature_FoodOrdersManagement: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveAuditQuestions: Boolean;\r\n canAccess_feature_ViewCompanyWideLeaves: Boolean;\r\n canAccess_feature_UnarchiveProject: Boolean;\r\n canAccess_feature_ViewEmployeeImmigrationDetails: Boolean;\r\n canAccess_feature_UpdateUser: Boolean;\r\n canAccess_feature_ViewEmployeeLicenceDetails: Boolean;\r\n canAccess_feature_ParkAdhocWork: Boolean;\r\n canAccess_feature_DeleteLeave: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveQuestionType: Boolean;\r\n canAccess_feature_SelectLogTimeReport: Boolean;\r\n canAccess_feature_EmployeeIndex: Boolean;\r\n canAccess_feature_RecentIndividualFoodOrders: Boolean;\r\n canAccess_feature_ManageActivityDashboard: Boolean;\r\n canAccess_feature_AssetManagement: Boolean;\r\n canAccess_feature_Chat: Boolean;\r\n canAccess_feature_ManageImportOrExportClient: Boolean;\r\n canAccess_feature_ViewAuditActions: Boolean;\r\n canAccess_feature_GoalsToArchive: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeLanguages: Boolean;\r\n canAccess_feature_ActivelyRunningGoals: Boolean;\r\n canAccess_feature_AllGoalsWithAdvancedSearch: Boolean;\r\n canAccess_feature_HideDashboard: Boolean;\r\n canAccess_feature_SubmitTimesheet: Boolean;\r\n canAccess_feature_PayrollGenderConfiguration: Boolean;\r\n canAccess_feature_ApproveOrRejectExpense: Boolean;\r\n canAccess_feature_ViewEstimate: Boolean;\r\n canAccess_feature_CanteenPurchasesSummary: Boolean;\r\n canAccess_feature_ViewVendors: Boolean;\r\n canAccess_feature_ViewUsers: Boolean;\r\n canAccess_feature_ViewInvoice: Boolean;\r\n canAccess_feature_LeavesReport: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeSalaryDetails: Boolean;\r\n canAccess_feature_ViewEmployeeWebAppUsage: Boolean;\r\n canAccess_feature_ViewRoster: Boolean;\r\n canAccess_feature_ManageFeedback: Boolean;\r\n canAccess_feature_OffersCreditedToUsersSummary: Boolean;\r\n canAccess_feature_QaPerformance: Boolean;\r\n canAccess_feature_AllowanceTime: Boolean;\r\n canAccess_feature_AddOrUpdateAudit: Boolean;\r\n canAccess_feature_ManageProjectRolePermissions: Boolean;\r\n canAccess_feature_AddDashboard: Boolean;\r\n canAccess_feature_AddOrUpdateTrainingCourse: Boolean;\r\n canAccess_feature_ResetOthersPassword: Boolean;\r\n canAccess_feature_ManageEmployeeRatesheet: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeContactDetails: Boolean;\r\n canAccess_feature_ViewAllEmployees: Boolean;\r\n canAccess_feature_LeaveEncashmentSettings: Boolean;\r\n canAccess_feature_ViewEmployeeEmergencyContactDetails: Boolean;\r\n canAccess_feature_ConfigureEmployeePayrollTemplates: Boolean;\r\n canAccess_feature_ViewApplications: Boolean;\r\n canAccess_feature_ConfigureEmployeeTracking: Boolean;\r\n canAccess_feature_UserHistoricalReport: Boolean;\r\n canAccess_feature_ViewUserStatusHistory: Boolean;\r\n canAccess_feature_ManageActivityScreenshots: Boolean;\r\n canAccess_feature_ManageSubscriptionPaidBy: Boolean;\r\n canAccess_feature_ConductForm: Boolean;\r\n canAccess_feature_LateEmployeesCountVsDate: Boolean;\r\n canAccess_feature_AssignAssetsToEmployee: Boolean;\r\n canAccess_feature_EmployeeAttendence: Boolean;\r\n canAccess_feature_ActivityReport: Boolean;\r\n canAccess_feature_DevQuality: Boolean;\r\n canAccess_feature_ApproveRoster: Boolean;\r\n canAccess_feature_ViewFeedback: Boolean;\r\n canAccess_feature_ImminentDeadlines: Boolean;\r\n canAccess_feature_ArchiveMessage: Boolean;\r\n canAccess_feature_ArchiveOrUnarchiveMasterQuestionType: Boolean;\r\n canAccess_feature_RoomTemperature: Boolean;\r\n canAccess_feature_ViewOrManageInvoiceStatus: Boolean;\r\n canAccess_feature_ManagePayrollTemplate: Boolean;\r\n canAccess_feature_ViewAuditReports: Boolean;\r\n canAccess_feature_EditStores: Boolean;\r\n canAccess_feature_ViewAssetsWithAdvancedSearch: Boolean;\r\n canAccess_feature_ViewPermissions: Boolean;\r\n canAccess_feature_Applications: Boolean;\r\n canAccess_feature_CanAnswerQuestions: Boolean;\r\n canAccess_feature_SubmitAudit: Boolean;\r\n canAccess_feature_PayrollBranchConfiguration: Boolean;\r\n canAccess_feature_ConfigurePerformance: Boolean;\r\n canAccess_feature_ViewLiveDashboard: Boolean;\r\n canAccess_feature_AddFoodOrder: Boolean;\r\n canAccess_feature_PayrollRunEmployee: Boolean;\r\n canAccess_feature_ViewEmployeeAppTrackerCompleteReport: Boolean;\r\n canAccess_feature_ManageHrManagement: Boolean;\r\n canAccess_feature_EmployeeTaxAllowanceDetails: Boolean;\r\n canAccess_feature_ViewStatusReportingConfiguration: Boolean;\r\n canAccess_feature_EmployeeBonus: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeShifts: Boolean;\r\n canAccess_feature_ViewAllAdhocWorks: Boolean;\r\n canAccess_feature_EmployeeResignation: Boolean;\r\n canAccess_feature_AddOrEditCustomFieldsForHrManagement: Boolean;\r\n canAccess_feature_ViewFoodOrders: Boolean;\r\n canAccess_feature_AddOrUpdateEstimate: Boolean;\r\n canAccess_feature_DaysOfWeekConfiguration: Boolean;\r\n canAccess_feature_CanAccessPerformance: Boolean;\r\n canAccess_feature_ViewOverallAuditActivity: Boolean;\r\n canAccess_feature_PayrollFrequency: Boolean;\r\n canAccess_feature_ViewMonthlyPayrollDetails: Boolean;\r\n canAccess_feature_SnapLiveDashboard: Boolean;\r\n canAccess_feature_ViewAuditConductTimelineReport: Boolean;\r\n canAccess_feature_ManageHoliday: Boolean;\r\n canAccess_feature_AddOrUpdateEmploymentContract: Boolean;\r\n canAccess_feature_ViewListOfAssets: Boolean;\r\n canAccess_feature_CanViewAuditComplainceReport: Boolean;\r\n canAccess_feature_ManageDashboards: Boolean;\r\n canAccess_feature_CanViewNumberOfAuditsSubmitted: Boolean;\r\n canAccess_feature_TrainingManagement: Boolean;\r\n canAccess_feature_UploadFiles: Boolean;\r\n canAccess_feature_WorkAllocationSummary: Boolean;\r\n canAccess_feature_AddOrUpdateEmployeeMemberships: Boolean;\r\n canAccess_feature_ViewMyWorkWithAdvancedSearch: Boolean;\r\n canAccess_feature_ViewCompanyDetails: Boolean;\r\n canAccess_feature_ChatFileUpload: Boolean;\r\n canAccess_feature_MyProjectWork: Boolean;\r\n canAccess_feature_DeletePermissions: Boolean;\r\n canAccess_feature_ViewTrainingRecord: Boolean;\r\n canAccess_feature_ManageSystemImports: Boolean;\r\n canAccess_feature_ManageSystemExports: Boolean;\r\n canAccess_feature_Settings: Boolean;\r\n canAccess_feature_ManageAccountsAndBilling : Boolean;\r\n canAccess_feature_ViewActivityReportsForAllEmployee: Boolean;\r\n\r\n ngOnInit(): void {\r\n\r\n var roles = JSON.parse(localStorage.getItem(LocalStorageProperties.RoleFeatures));\r\n this.canAccess_feature_ManageRegion = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRegion.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeJob = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeJob.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveInvoice = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveInvoice.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeFormat = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeFormat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewLeaves = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewLeaves.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestcaseAutomationType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestcaseAutomationType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePeakHour = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePeakHour.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageEducationLevels = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageEducationLevels.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_MyWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_MyWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Notifications = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Notifications.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_StatusReporting = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_StatusReporting.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAuditCategory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAuditCategory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeContactDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeContactDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMasterSettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMasterSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveAuditReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveAuditReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAuditConducts = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAuditConducts.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateExpense = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateExpense.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewBadgesAssignedToEmployee = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewBadgesAssignedToEmployee.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_HrManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_HrManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TaxSlabs = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_TaxSlabs.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeBankDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeBankDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_MarkDamagedAssest = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_MarkDamagedAssest.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkItemsHavingOthersDependency = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkItemsHavingOthersDependency.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewPayrollReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewPayrollReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDocumentTemplates = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDocumentTemplates.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingCourses = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingCourses.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeSpentTime = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeSpentTime.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePaymentMethod = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePaymentMethod.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollCalculationConfigurations = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollCalculationConfigurations.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeDependentContactDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeDependentContactDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ContractPaySettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ContractPaySettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAuditQuestions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAuditQuestions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeSkills = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeSkills.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageExpenseManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageExpenseManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CreateRoster = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CreateRoster.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLicenceType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLicenceType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssignOrUnassignTrainingCourse = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssignOrUnassignTrainingCourse.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeAccountDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeAccountDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeLoans = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeLoans.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AbilityToChat = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AbilityToChat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeWorkAllocation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeWorkAllocation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeShiftDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeShiftDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeLanguageDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeLanguageDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBranch = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBranch.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMaritalStatuses = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMaritalStatuses.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateFoodItem = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateFoodItem.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageHtmltemplate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageHtmltemplate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRateSheet = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRateSheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAsset = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAsset.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrEditEmployeeLoanInstallment = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrEditEmployeeLoanInstallment.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAuditReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAuditReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDateFormat = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDateFormat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ConfigurePayrollStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ConfigurePayrollStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UpsertCompanyDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UpsertCompanyDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmploymentContractDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmploymentContractDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DownloadOrShareInvoice = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DownloadOrShareInvoice.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAudit = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAudit.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EditMessage = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EditMessage.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApproveOrRejectLeave = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApproveOrRejectLeave.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_SpentTimeDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_SpentTimeDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveAudit = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveAudit.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBugPriority = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBugPriority.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeWorkExperienceDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeWorkExperienceDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ProfessionalTaxRanges = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ProfessionalTaxRanges.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EnableNotifications = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EnableNotifications.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TdsSettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_TdsSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCountry = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCountry.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewExpenses = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewExpenses.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeLogtimeDetailsReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeLogtimeDetailsReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CreditAmount = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CreditAmount.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AllGoals = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AllGoals.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAssignmentStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAssignmentStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveAuditConduct = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveAuditConduct.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeActivityTimeUsage = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeActivityTimeUsage.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ProcessDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ProcessDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeSheetManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeSheetManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCompanySettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCompanySettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AccessTestrepo = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AccessTestrepo.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanAssignAuditTags = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanAssignAuditTags.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrEditLeaveType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrEditLeaveType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EveryDayTargetStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EveryDayTargetStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveProject = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveProject.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DirectMessaging = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DirectMessaging.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewStores = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewStores.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApplyLeave = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApplyLeave.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageInvoiceSchedule = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageInvoiceSchedule.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssignAdhocWorkToAllUsers = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssignAdhocWorkToAllUsers.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePermissionReason = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePermissionReason.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanChangeVisualisationType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanChangeVisualisationType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateClient = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateClient.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateInvoice = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateInvoice.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_RecentlyPurchasedAssets = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_RecentlyPurchasedAssets.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanCreateReminders = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanCreateReminders.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePaygrade = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePaygrade.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewRoles = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewRoles.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateMasterQuestionType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateMasterQuestionType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRelationShip = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRelationShip.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollRun = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollRun.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveAuditCategory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveAuditCategory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DragApps = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DragApps.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveSubmittedStatusReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveSubmittedStatusReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanViewOrganizationChart = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanViewOrganizationChart.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DeleteCustomFieldsForHrManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DeleteCustomFieldsForHrManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EditPayslip = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EditPayslip.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeCredits = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeCredits.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_FinancialYearConfigurations = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_FinancialYearConfigurations.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TestrepoManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_TestrepoManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DocumentManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DocumentManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApproveEmployeeTaxAllowances = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApproveEmployeeTaxAllowances.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeReportToDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeReportToDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrEditCustomFieldsForProjectManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrEditCustomFieldsForProjectManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateStatusReportingConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateStatusReportingConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UserUpload = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UserUpload.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LateEmployee = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LateEmployee.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeLoanInstallment = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeLoanInstallment.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeMembershipDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeMembershipDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_RecentlyAssignedAssets = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_RecentlyAssignedAssets.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeesCurrentWorkingOrBacklogWorkItems = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeesCurrentWorkingOrBacklogWorkItems.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewStatusReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewStatusReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ResignationStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ResignationStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Venue = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Venue.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageButtonType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageButtonType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewRoomTemperature = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewRoomTemperature.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UpdateFoodOrder = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UpdateFoodOrder.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCurrency = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCurrency.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanSubmitCustomFieldsForHrManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanSubmitCustomFieldsForHrManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveEstimate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveEstimate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLeavesManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLeavesManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateChannel = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateChannel.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewForms = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewForms.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanteenManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanteenManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageProcessDashboardStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageProcessDashboardStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ProjectsActivelyRunningGoals = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ProjectsActivelyRunningGoals.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeImmigration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeImmigration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AlternateSignIn = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AlternateSignIn.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageActivityTracker = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageActivityTracker.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_RecentlyDamagedAssets = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_RecentlyDamagedAssets.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDesignation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDesignation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssetHistory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssetHistory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ProjectManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ProjectManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAppsAndUrls = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAppsAndUrls.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemSubType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemSubType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestcaseStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestcaseStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeBankDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeBankDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkflowManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkflowManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveForm = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveForm.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ShareExpense = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ShareExpense.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSystemApps = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSystemApps.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_BookingManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_BookingManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_GoalLevelReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_GoalLevelReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeEducationDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeEducationDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_BoardTypeApi = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_BoardTypeApi.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLeaveStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLeaveStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemReplanType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemReplanType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveUser = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveUser.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrackedInformationOfUserstory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrackedInformationOfUserstory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddUser = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddUser.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LeaveManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LeaveManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewProjects = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewProjects.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApproveOrRejectTimesheet = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApproveOrRejectTimesheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_RoleManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_RoleManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CopyOrMoveQuestions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CopyOrMoveQuestions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageState = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageState.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCustomFormSubmissions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCustomFormSubmissions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewLocations = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewLocations.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageInductionWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageInductionWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAllEmployeeActivityReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAllEmployeeActivityReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DownloadEmployeeSalaryCertificate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DownloadEmployeeSalaryCertificate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestrepoManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestrepoManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageFormType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageFormType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCompanyStructure = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCompanyStructure.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewRecentlyActiveClients = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewRecentlyActiveClients.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRoster = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRoster.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeWorkLogReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeWorkLogReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DownloadOrShareAuditReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DownloadOrShareAuditReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ConfigureWebhooks = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ConfigureWebhooks.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageStoreManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageStoreManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateProduct = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateProduct.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CreateFolder = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CreateFolder.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollTemplateConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollTemplateConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssetsAllocatedToMe = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssetsAllocatedToMe.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeCreditorDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeCreditorDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApproveEmployeeLoans = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApproveEmployeeLoans.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeSkillDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeSkillDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanViewUsersCanteenSummary = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanViewUsersCanteenSummary.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkAllocation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkAllocation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWebhook = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWebhook.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddPermission = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddPermission.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTodaysTimesheet = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTodaysTimesheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanAssignBadgeToEmployee = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanAssignBadgeToEmployee.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageReportingMethods = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageReportingMethods.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageFeedBackType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageFeedBackType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeJobDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeJobDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeWorkExperienceDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeWorkExperienceDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DoChannelChatOnly = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DoChannelChatOnly.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UpdatePermission = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UpdatePermission.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Security = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Security.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_SubmitStatusReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_SubmitStatusReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Audit = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Audit.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeEmergencyContactDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeEmergencyContactDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_BugReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_BugReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TaxAllowance = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_TaxAllowance.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssetComment = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssetComment.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeDependentContactDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeDependentContactDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PurchaseFoodItem = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PurchaseFoodItem.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingAssignments = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingAssignments.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTimesheetFeed = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTimesheetFeed.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeReportingToDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeReportingToDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollRoleConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollRoleConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DashboardManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DashboardManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCompanyLocation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCompanyLocation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageNumberFormat = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageNumberFormat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkItemsHavingDependencyOnMe = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkItemsHavingDependencyOnMe.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeEducationDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeEducationDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveRole = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveRole.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TimeSheetManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_TimeSheetManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateApplications = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateApplications.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PublishAsDefault = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PublishAsDefault.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewMasterQuestionTypes = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewMasterQuestionTypes.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewProductDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewProductDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DeleteCustomFieldsForProjectManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DeleteCustomFieldsForProjectManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAuthorization = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAuthorization.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMemberships = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMemberships.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCustomApps = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCustomApps.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_FoodItemsList = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_FoodItemsList.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateForm = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateForm.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveAdhocWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveAdhocWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLeaveSession = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLeaveSession.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAccessibleIpAdresses = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAccessibleIpAdresses.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkItemUpload = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkItemUpload.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAppSettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAppSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanApprovePerformance = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanApprovePerformance.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateLocation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateLocation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRestrictionType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRestrictionType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLeaveFormula = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLeaveFormula.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeWorkItems = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeWorkItems.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_BillingManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_BillingManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EditDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EditDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingMatrix = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingMatrix.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAppFilters = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAppFilters.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLeaveType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLeaveType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveStatusReportConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveStatusReportConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ResetPassword = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ResetPassword.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EditRoster = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EditRoster.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AbilityToCreatePublicProject = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AbilityToCreatePublicProject.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollMaritalStatusConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollMaritalStatusConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRateType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRateType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddProject = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddProject.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeJobDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeJobDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageEmploymentType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageEmploymentType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAdhocWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAdhocWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ForgotPassword = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ForgotPassword.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LogTimeReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LogTimeReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DeleteDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DeleteDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewQuestionTypes = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewQuestionTypes.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewHistoricalTimesheet = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewHistoricalTimesheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkItemsWaitingForQaApproval = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkItemsWaitingForQaApproval.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_InviteeForSignature = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_InviteeForSignature.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateRole = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateRole.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanCloneAudit = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanCloneAudit.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveTrainingCourse = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveTrainingCourse.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PunchCard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PunchCard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageActivityConfig = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageActivityConfig.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_OrganizationChart = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_OrganizationChart.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DashboardMenuItem = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DashboardMenuItem.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_FeatureUsageReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_FeatureUsageReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ActivityTracker = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ActivityTracker.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DeleteGoalFilter = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DeleteGoalFilter.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeePresence = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeePresence.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePayFrequency = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePayFrequency.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageProjectManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageProjectManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageField = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageField.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewApplicationUsageReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewApplicationUsageReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateTimesheetentry = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateTimesheetentry.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeePersonalDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeePersonalDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateQuestionType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateQuestionType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewFiles = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewFiles.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAuditConduct = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAuditConduct.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeePayrollDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeePayrollDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBadges = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBadges.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LeaveTypeConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LeaveTypeConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePayrollComponent = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePayrollComponent.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanEditOtherEmployeeDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanEditOtherEmployeeDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Authorisation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Authorisation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveExpense = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveExpense.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ReviewFile = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ReviewFile.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_HourlyTdsConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_HourlyTdsConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeConfigurationSettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeConfigurationSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeSalaryDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeSalaryDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDepartment = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDepartment.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageContractType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageContractType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageGender = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageGender.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AppManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AppManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanPassAnAnnouncement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanPassAnAnnouncement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AllFoodOrders = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AllFoodOrders.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeLicenceDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeLicenceDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanSubmitCustomFieldsForProjectManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanSubmitCustomFieldsForProjectManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanViewAuditNonComplainceReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanViewAuditNonComplainceReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTestrepoReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTestrepoReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_MyAdhocWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_MyAdhocWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeePersonalDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeePersonalDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApplyLeaveOnBehalfOfOthers = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApplyLeaveOnBehalfOfOthers.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateVendor = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateVendor.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeWorkingDays = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeWorkingDays.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageJobCategory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageJobCategory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_BillAmountOnDailyBasis = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_BillAmountOnDailyBasis.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_FoodOrdersManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_FoodOrdersManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveAuditQuestions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveAuditQuestions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewCompanyWideLeaves = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewCompanyWideLeaves.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UnarchiveProject = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UnarchiveProject.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeImmigrationDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeImmigrationDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UpdateUser = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UpdateUser.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeLicenceDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeLicenceDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ParkAdhocWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ParkAdhocWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DeleteLeave = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DeleteLeave.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveQuestionType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveQuestionType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_SelectLogTimeReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_SelectLogTimeReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeIndex = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeIndex.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_RecentIndividualFoodOrders = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_RecentIndividualFoodOrders.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageActivityDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageActivityDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssetManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssetManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Chat = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Chat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageImportOrExportClient = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageImportOrExportClient.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSoftLabelConfigurations = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSoftLabelConfigurations.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAuditActions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAuditActions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_GoalsToArchive = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_GoalsToArchive.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeLanguages = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeLanguages.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ActivelyRunningGoals = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ActivelyRunningGoals.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AllGoalsWithAdvancedSearch = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AllGoalsWithAdvancedSearch.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_HideDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_HideDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_SubmitTimesheet = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_SubmitTimesheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollGenderConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollGenderConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApproveOrRejectExpense = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApproveOrRejectExpense.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEstimate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEstimate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanteenPurchasesSummary = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanteenPurchasesSummary.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewVendors = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewVendors.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewUsers = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewUsers.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBoardTypeWorkflow = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBoardTypeWorkflow.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewInvoice = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewInvoice.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LeavesReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LeavesReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeSalaryDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeSalaryDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeWebAppUsage = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeWebAppUsage.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewRoster = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewRoster.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageFeedback = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageFeedback.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_OffersCreditedToUsersSummary = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_OffersCreditedToUsersSummary.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_QaPerformance = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_QaPerformance.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AllowanceTime = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AllowanceTime.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAudit = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAudit.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageProjectRolePermissions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageProjectRolePermissions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMerchant = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMerchant.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateTrainingCourse = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateTrainingCourse.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ResetOthersPassword = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ResetOthersPassword.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageEmployeeRatesheet = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageEmployeeRatesheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeContactDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeContactDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAllEmployees = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAllEmployees.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LeaveEncashmentSettings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LeaveEncashmentSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageGoalReplanType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageGoalReplanType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestcaseType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestcaseType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCompanyIntroducedByOption = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCompanyIntroducedByOption.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeEmergencyContactDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeEmergencyContactDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ConfigureEmployeePayrollTemplates = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ConfigureEmployeePayrollTemplates.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_MangeNationalities = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_MangeNationalities.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewApplications = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewApplications.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ConfigureEmployeeTracking = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ConfigureEmployeeTracking.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UserHistoricalReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UserHistoricalReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMainUseCase = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMainUseCase.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewUserStatusHistory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewUserStatusHistory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageActivityScreenshots = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageActivityScreenshots.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeZone = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeZone.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLanguages = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLanguages.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSubscriptionPaidBy = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSubscriptionPaidBy.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ConductForm = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ConductForm.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_LateEmployeesCountVsDate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_LateEmployeesCountVsDate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssignAssetsToEmployee = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AssignAssetsToEmployee.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeAttendence = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeAttendence.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ActivityReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ActivityReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DevQuality = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DevQuality.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ApproveRoster = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ApproveRoster.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewFeedback = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewFeedback.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ImminentDeadlines = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ImminentDeadlines.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveMessage = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveMessage.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveOrUnarchiveMasterQuestionType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveOrUnarchiveMasterQuestionType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_RoomTemperature = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_RoomTemperature.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageShifttiming = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageShifttiming.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewOrManageInvoiceStatus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewOrManageInvoiceStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePayrollTemplate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePayrollTemplate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAuditReports = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAuditReports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EditStores = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EditStores.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAssetsWithAdvancedSearch = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAssetsWithAdvancedSearch.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewPermissions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewPermissions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Applications = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_Applications.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanAnswerQuestions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanAnswerQuestions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_SubmitAudit = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_SubmitAudit.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollBranchConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollBranchConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ConfigurePerformance = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ConfigurePerformance.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSkills = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSkills.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewLiveDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewLiveDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddFoodOrder = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddFoodOrder.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollRunEmployee = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollRunEmployee.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePaymentType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePaymentType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewEmployeeAppTrackerCompleteReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewEmployeeAppTrackerCompleteReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageHrManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageHrManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeTaxAllowanceDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeTaxAllowanceDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewStatusReportingConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewStatusReportingConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeBonus = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeBonus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeShifts = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeShifts.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAllAdhocWorks = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAllAdhocWorks.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_EmployeeResignation = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_EmployeeResignation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrEditCustomFieldsForHrManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrEditCustomFieldsForHrManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewFoodOrders = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewFoodOrders.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEstimate = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEstimate.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DaysOfWeekConfiguration = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DaysOfWeekConfiguration.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanAccessPerformance = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanAccessPerformance.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewOverallAuditActivity = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewOverallAuditActivity.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_PayrollFrequency = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_PayrollFrequency.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewMonthlyPayrollDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewMonthlyPayrollDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_SnapLiveDashboard = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_SnapLiveDashboard.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewAuditConductTimelineReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewAuditConductTimelineReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageHoliday = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageHoliday.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmploymentContract = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmploymentContract.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewListOfAssets = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewListOfAssets.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageProjectType = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageProjectType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanViewAuditComplainceReport = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanViewAuditComplainceReport.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDashboards = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDashboards.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_CanViewNumberOfAuditsSubmitted = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_CanViewNumberOfAuditsSubmitted.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TrainingManagement = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_TrainingManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_UploadFiles = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_UploadFiles.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkAllocationSummary = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_WorkAllocationSummary.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateEmployeeMemberships = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateEmployeeMemberships.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewMyWorkWithAdvancedSearch = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewMyWorkWithAdvancedSearch.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewCompanyDetails = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewCompanyDetails.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ChatFileUpload = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ChatFileUpload.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_MyProjectWork = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_MyProjectWork.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DeletePermissions = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_DeletePermissions.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageExpenseCategory = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageExpenseCategory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingRecord = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingRecord.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingCourses = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingCourses.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AssignOrUnassignTrainingCourse = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_AssignOrUnassignTrainingCourse.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingAssignments = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingAssignments.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingMatrix = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingMatrix.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ArchiveTrainingCourse = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ArchiveTrainingCourse.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateTrainingCourse = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateTrainingCourse.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_TrainingManagement = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_TrainingManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_AddOrUpdateAssignmentStatus = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_AddOrUpdateAssignmentStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_DragApps = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_DragApps.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewTrainingRecord = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ViewTrainingRecord.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAccessibleIpAdresses = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAccessibleIpAdresses.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCompanyIntroducedByOption = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCompanyIntroducedByOption.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCompanyLocation = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCompanyLocation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDateFormat = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDateFormat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMainUseCase = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMainUseCase.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageNumberFormat = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageNumberFormat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeFormat = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeFormat.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageExpenseCategory = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageExpenseCategory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMerchant = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMerchant.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBranch = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBranch.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageContractType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageContractType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCountry = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCountry.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageCurrency = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageCurrency.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDepartment = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDepartment.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageDesignation = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageDesignation.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageEducationLevels = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageEducationLevels.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageEmploymentType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageEmploymentType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageJobCategory = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageJobCategory.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLanguages = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLanguages.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageLicenceType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageLicenceType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageMemberships = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageMemberships.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_MangeNationalities = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_MangeNationalities.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePaygrade = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePaygrade.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePayFrequency = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePayFrequency.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePaymentMethod = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePaymentMethod.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePaymentType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePaymentType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePeakHour = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePeakHour.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRateType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRateType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRateSheet = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRateSheet.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageRegion = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageRegion.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageReportingMethods = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageReportingMethods.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageShifttiming = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageShifttiming.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSkills = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSkills.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSoftLabelConfigurations = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSoftLabelConfigurations.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageState = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageState.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeZone = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeZone.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWebhook = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWebhook.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAppSettings = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAppSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTimeConfigurationSettings = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTimeConfigurationSettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageFormType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageFormType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestcaseAutomationType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestcaseAutomationType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestcaseStatus = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestcaseStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageTestcaseType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageTestcaseType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageButtonType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageButtonType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageFeedBackType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageFeedBackType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManagePermissionReason = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManagePermissionReason.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_BoardTypeApi = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_BoardTypeApi.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBoardTypeWorkflow = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBoardTypeWorkflow.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageProcessDashboardStatus = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageProcessDashboardStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_WorkflowManagement = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_WorkflowManagement.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageBugPriority = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageBugPriority.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageGoalReplanType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageGoalReplanType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageProjectType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageProjectType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemReplanType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemReplanType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemStatus = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemStatus.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemSubType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemSubType.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageWorkItemType = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageWorkItemType.toString().toLowerCase(); }) != null;\r\n\r\n this.canAccess_feature_ManageSystemExports = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSystemExports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageSystemImports = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageSystemImports.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_Settings = _.find(roles, function (role: any){ return role.featureId.toLowerCase() == FeatureIds.Feature_ManageOverAllCompanySettings.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ManageAccountsAndBilling = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ManageAccountsAndBilling.toString().toLowerCase(); }) != null;\r\n this.canAccess_feature_ViewActivityReportsForAllEmployee = _.find(roles, function (role: any) { return role.featureId.toLowerCase() == FeatureIds.Feature_ViewActivityReportsForAllEmployee.toString().toLowerCase(); }) != null;\r\n\r\n }\r\n\r\n constructor() {\r\n this.logNavigation();\r\n }\r\n\r\n protected logError(errorMessage: string) {\r\n\r\n }\r\n\r\n private logNavigation() {\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { delay } from 'rxjs/operators';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { LocalStorageProperties } from '../constants/localstorage-properties';\r\n\r\n@Injectable()\r\n\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n constructor(private cookieService: CookieService) { }\r\n\r\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n\r\n let currentUser = this.cookieService.get(LocalStorageProperties.CurrentUser);\r\n let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);\r\n\r\n if (currentCulture === 'null' || currentCulture === 'undefined') {\r\n currentCulture = 'en';\r\n }\r\n if (currentUser) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${currentUser}`,\r\n CurrentCulture: currentCulture != null && currentCulture != \"\" ? currentCulture : 'en'\r\n }\r\n });\r\n }\r\n if (!environment.production && environment.useTestAuthenticator) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYW1laWQiOiIxMjcxMzNmMS00NDI3LTQxNDktOWRkNi1iMDJlMGUwMzY5NzEiLCJDb21wYW55IjoiNGFmZWI0NDQtZTgyNi00Zjk1LWFjNDEtMjE3NWUzNmEwYzE2IiwiaXNzIjoiaHR0cDovL215LnRva2VuaXNzdWVyLmNvbSIsImF1ZCI6Imh0dHA6Ly9teS53ZWJzaXRlLmNvbSIsImV4cCI6MTk4MjA4MTI0NywibmJmIjoxNTUwMDg0ODQ3fQ.yUHRfy1aCW9F_CvbBZmuK-mOWf5YrftathYJ0HYjd6Q`\r\n }\r\n });\r\n }\r\n \r\n var updatedHandler = next.handle(request);\r\n return updatedHandler;\r\n }\r\n}","import { Pipe, PipeTransform, Injectable } from \"@angular/core\";\r\n\r\n@Pipe({ name: \"removeSpecialCharacters\", pure: true })\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class RemoveSpecialCharactersPipe implements PipeTransform {\r\n transform(sourceText: string): string {\r\n if (!sourceText) {\r\n return null;\r\n }\r\n var sourceText = sourceText.replace(/-/g, \"\");\r\n return sourceText.replace(/[^a-zA-Z0-9\\s]/g, '');\r\n }\r\n}","import { Inject, Injectable, Optional } from '@angular/core';\r\nimport { MAT_DATE_LOCALE } from '@angular/material/core'; \r\nimport { MomentDateAdapter } from '@angular/material-moment-adapter';\r\nimport { Moment } from 'moment';\r\nimport * as moment from 'moment';\r\n\r\n@Injectable()\r\nexport class MomentUtcDateAdapter extends MomentDateAdapter {\r\n\r\n constructor(@Optional() @Inject(MAT_DATE_LOCALE) dateLocale: string) {\r\n super(dateLocale);\r\n }\r\n\r\n createDate(year: number, month: number, date: number): Moment {\r\n // Moment.js will create an invalid date if any of the components are out of bounds, but we\r\n // explicitly check each case so we can throw more descriptive errors.\r\n if (month < 0 || month > 11) {\r\n throw Error(`Invalid month index \"${month}\". Month index has to be between 0 and 11.`);\r\n }\r\n\r\n if (date < 1) {\r\n throw Error(`Invalid date \"${date}\". Date has to be greater than 0.`);\r\n }\r\n\r\n let result = moment.utc({ year, month, date }).locale(this.locale);\r\n\r\n // If the result isn't valid, the date must have been out of bounds for this month.\r\n if (!result.isValid()) {\r\n throw Error(`Invalid date \"${date}\" for month with index \"${month}\".`);\r\n }\r\n\r\n return result;\r\n }\r\n}","import { Injectable, Pipe, PipeTransform } from \"@angular/core\";\r\nimport * as _ from \"underscore\";\r\n@Pipe({\r\n name: \"softLabelsPipe\"\r\n})\r\n@Injectable({ providedIn: 'root' })\r\nexport class SoftLabelPipe implements PipeTransform {\r\n transform(searchText: string, softLabels: any[]): string {\r\n let replaceText;\r\n if (!softLabels || softLabels.length === 0) {\r\n return searchText;\r\n }\r\n if (searchText && searchText.trim()) {\r\n if (searchText.toLowerCase().match(/(^|\\W)project($|\\W)/)) {\r\n replaceText = softLabels[0].projectLabel;\r\n let re = /project/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)deadline($|\\W)/)) {\r\n replaceText = softLabels[0].deadlineLabel;\r\n let re = /deadline/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)goal($|\\W)/)) {\r\n replaceText = softLabels[0].goalLabel;\r\n let re = /goal/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)work item($|\\W)/)) {\r\n replaceText = softLabels[0].userStoryLabel;\r\n let re = /work item/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)employee($|\\W)/)) {\r\n replaceText = softLabels[0].employeeLabel;\r\n let re = /employee/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)projects($|\\W)/)) {\r\n replaceText = softLabels[0].projectsLabel;\r\n let re = /projects/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)deadlines($|\\W)/)) {\r\n replaceText = softLabels[0].deadlinesLabel;\r\n let re = /deadlines/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)goals($|\\W)/)) {\r\n replaceText = softLabels[0].goalsLabel;\r\n let re = /goals/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)work items($|\\W)/)) {\r\n replaceText = softLabels[0].userStoriesLabel;\r\n let re = /work items/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)employees($|\\W)/)) {\r\n replaceText = softLabels[0].employeesLabel;\r\n let re = /employees/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)scenario($|\\W)/)) {\r\n replaceText = softLabels[0].scenarioLabel;\r\n let re = /scenario/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)test suite($|\\W)/)) {\r\n replaceText = softLabels[0].scenariosLabel;\r\n let re = /test suite/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)test suites($|\\W)/)) {\r\n replaceText = softLabels[0].scenarioLabel;\r\n let re = /test suites/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)scenarios($|\\W)/)) {\r\n replaceText = softLabels[0].scenariosLabel;\r\n let re = /scenarios/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)run($|\\W)/)) {\r\n replaceText = softLabels[0].runLabel;\r\n let re = /run/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)runs($|\\W)/)) {\r\n replaceText = softLabels[0].runsLabel;\r\n let re = /runs/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)test suite($|\\W)/)) {\r\n replaceText = softLabels[0].runLabel;\r\n let re = /run/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)test suites($|\\W)/)) {\r\n replaceText = softLabels[0].runsLabel;\r\n let re = /runs/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)version($|\\W)/)) {\r\n replaceText = softLabels[0].versionLabel;\r\n let re = /version/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)versions($|\\W)/)) {\r\n replaceText = softLabels[0].versionsLabel;\r\n let re = /versions/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)test report($|\\W)/)) {\r\n replaceText = softLabels[0].testReportLabel;\r\n let re = /test report/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)test reports($|\\W)/)) {\r\n replaceText = softLabels[0].testReportsLabel;\r\n let re = /test reports/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)estimated time($|\\W)/)) {\r\n replaceText = softLabels[0].estimatedTimeLabel;\r\n let re = /estimated time/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)estimation($|\\W)/)) {\r\n replaceText = softLabels[0].estimationLabel;\r\n let re = /estimation/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)estimations($|\\W)/)) {\r\n replaceText = softLabels[0].estimationsLabel;\r\n let re = /estimations/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)estimate($|\\W)/)) {\r\n replaceText = softLabels[0].estimateLabel;\r\n let re = /estimate/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)estimates($|\\W)/)) {\r\n replaceText = softLabels[0].estimatesLabel;\r\n let re = /estimates/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)audits($|\\W)/)) {\r\n replaceText = softLabels[0].auditsLabel;\r\n let re = /audits/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)conduct($|\\W)/)) {\r\n replaceText = softLabels[0].conductLabel;\r\n let re = /conduct/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)conducts($|\\W)/)) {\r\n replaceText = softLabels[0].conductsLabel;\r\n let re = /conducts/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)action($|\\W)/)) {\r\n replaceText = softLabels[0].actionLabel;\r\n let re = /action/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)actions($|\\W)/)) {\r\n replaceText = softLabels[0].actionsLabel;\r\n let re = /actions/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)timeline($|\\W)/)) {\r\n replaceText = softLabels[0].timelineLabel;\r\n let re = /timeline/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase() == \"audit report\") {\r\n replaceText = softLabels[0].auditReportLabel;\r\n let re = /audit report/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase() == \"audit reports\") {\r\n replaceText = softLabels[0].auditReportsLabel;\r\n let re = /audit reports/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)audit activity($|\\W)/)) {\r\n replaceText = softLabels[0].auditActivityLabel;\r\n let re = /audit activity/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)audit analytics($|\\W)/)) {\r\n replaceText = softLabels[0].auditAnalyticsLabel;\r\n let re = /audit analytics/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)client($|\\W)/)) {\r\n replaceText = softLabels[0].clientLabel;\r\n let re = /client/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)clients($|\\W)/)) {\r\n replaceText = softLabels[0].clientsLabel;\r\n let re = /clients/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)question($|\\W)/)) {\r\n replaceText = softLabels[0].auditQuestionLabel;\r\n let re = /question/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)questions($|\\W)/)) {\r\n replaceText = softLabels[0].auditQuestionsLabel;\r\n let re = /questions/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)report($|\\W)/) && searchText.toLowerCase() != \"audit report\" && searchText.toLowerCase() != \"audit reports\") {\r\n replaceText = softLabels[0].reportLabel;\r\n let re = /report/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)reports($|\\W)/) && searchText.toLowerCase() != \"audit report\" && searchText.toLowerCase() != \"audit reports\") {\r\n replaceText = softLabels[0].reportsLabel;\r\n let re = /reports/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (searchText.toLowerCase().match(/(^|\\W)audit($|\\W)/) && searchText.toLowerCase() != \"audit report\" && searchText.toLowerCase() != \"audit reports\") {\r\n replaceText = softLabels[0].auditLabel;\r\n let re = /audit/gi;\r\n if (replaceText) {\r\n searchText = searchText.replace(re, replaceText);\r\n }\r\n }\r\n if (!searchText.includes('estimated time')) {\r\n let searchString = searchText.split('.');\r\n let str = \"\";\r\n\r\n searchString.forEach(function (item) {\r\n\r\n if (item.trim() != \"\") {\r\n if (item != \"HR\" && !item.includes('h'))\r\n item = item.trim().charAt(0).toUpperCase() + item.trim().substr(1).toLowerCase();\r\n str = str != \"\" ? (str + \". \" + item + \".\") : item;\r\n }\r\n });\r\n\r\n searchText = str;\r\n }\r\n }\r\n\r\n return searchText;\r\n }\r\n}\r\n","import { Pipe, PipeTransform, Injectable } from '@angular/core';\r\nimport * as moment from \"moment\";\r\n\r\n@Pipe({ name: 'utcToLocalTimeWithDate' })\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class UtcToLocalTimeWithDatePipe implements PipeTransform {\r\n transform(utcDate: string): string {\r\n if (!utcDate) {\r\n return null;\r\n }\r\n\r\n var temp = '2019-10-11T';\r\n var date = temp.toString().concat(utcDate);\r\n const localDate = moment.utc(date).local().format();\r\n return localDate;\r\n }\r\n}","import { Injectable, Pipe, PipeTransform } from \"@angular/core\";\r\nimport * as _ from \"underscore\";\r\n\r\n@Pipe({ name: \"workflowStatusFilter\" })\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class WorkflowStatusFilterPipe implements PipeTransform {\r\n transform(workflowStatus: any[], field: string, workflowStatusId: string): any[] {\r\n\r\n if (!workflowStatusId) {\r\n return workflowStatus;\r\n }\r\n else {\r\n\r\n var workflowStatus = _.filter(workflowStatus, function (s) {\r\n\r\n return !workflowStatusId.includes(s.userStoryStatusId);\r\n });\r\n return workflowStatus;\r\n }\r\n\r\n }\r\n}","import { Pipe, PipeTransform, Injectable } from \"@angular/core\";\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\n\r\n@Pipe({ name: \"fetchSizedAndCachedImage\", pure: true })\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class FetchSizedAndCachedImagePipe implements PipeTransform {\r\n transform(imageFullPath: string, width: string, height: string): string {\r\n if (!imageFullPath) {\r\n return null;\r\n }\r\n\r\n var queryString = imageFullPath;\r\n\r\n var widthString = width == \"\" ? \"\" : \"width=\" + width;\r\n var heightString = height == \"\" ? \"\" : \"height=\" + height;\r\n\r\n if (widthString !== \"\" && heightString !== \"\") {\r\n queryString += \"?\" + widthString + \"&\" + heightString;\r\n } else if (widthString !== \"\") {\r\n queryString += \"?\" + widthString;\r\n } else if (heightString !== \"\") {\r\n queryString += \"?\" + heightString;\r\n }\r\n\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n var returnedImage = environment.apiURL + \"remote.axd?\" + queryString;\r\n\r\n return returnedImage;\r\n }\r\n}\r\n","import { Pipe, PipeTransform, Injectable } from '@angular/core';\r\nimport * as moment from \"moment\";\r\nimport { NotificationModel } from '../../shell-components/models/NotificationsOutPutModel';\r\n\r\n@Pipe({ name: 'orderBy' })\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class OrderByPipe implements PipeTransform {\r\n\r\n transform(notifications: NotificationModel[]): any[] {\r\n if (notifications && notifications.length > 0) {\r\n notifications = notifications.sort((notificationSortAscModel, notificationSortDescModel) => {\r\n return moment.utc(notificationSortDescModel.createdDateTime).diff(moment.utc(notificationSortAscModel.createdDateTime));\r\n });\r\n return notifications;\r\n\r\n }\r\n }\r\n}","import { Pipe, PipeTransform, Injectable } from '@angular/core';\r\nimport * as moment from \"moment\";\r\n\r\n@Pipe({ name: 'utcToLocalTime' })\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class UtcToLocalTimePipe implements PipeTransform {\r\n transform(utcDate: any): string {\r\n if (!utcDate) {\r\n return null;\r\n }\r\n \r\n const localDate = moment.utc(utcDate).local().format();\r\n return localDate;\r\n }\r\n}","import { ClassProvider, FactoryProvider, InjectionToken } from \"@angular/core\";\r\n\r\nexport const WINDOW = new InjectionToken(\"WindowToken\");\r\n\r\nexport function _window(): any {\r\n return window;\r\n}\r\n\r\nexport abstract class WindowRef {\r\n get nativeWindow(): Window {\r\n throw new Error(\"Not implemented.\");\r\n }\r\n}\r\nexport class BrowserWindowRef extends WindowRef {\r\n constructor() {\r\n super();\r\n }\r\n get nativeWindow(): Window {\r\n return _window();\r\n }\r\n}\r\nconst browserWindowProvider: ClassProvider = {\r\n provide: WindowRef,\r\n useClass: BrowserWindowRef\r\n};\r\nexport const windowProvider: FactoryProvider = {\r\n provide: WINDOW,\r\n useFactory: _window,\r\n deps: []\r\n};\r\nexport const WINDOW_PROVIDERS = [\r\n browserWindowProvider,\r\n windowProvider\r\n];\r\n","import { Pipe, PipeTransform, Injectable } from \"@angular/core\";\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'sanitizeHtml'\r\n})\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class SanitizeHtmlPipe implements PipeTransform {\r\n\r\n constructor(private _sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(v: string): SafeHtml {\r\n return this._sanitizer.bypassSecurityTrustHtml(v);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\n\r\ndeclare let ga: Function; // Declare ga as a function\r\n\r\n@Injectable()\r\nexport class GoogleAnalyticsService {\r\n\r\n constructor(private cookieService: CookieService,) { }\r\n\r\n // create our event emitter to send our data to google analytics\r\n public eventEmitter(eventCategory: string,\r\n eventAction: string,\r\n eventLabel: string = null,\r\n eventValue: number = null) {\r\n ga('send', 'event', {\r\n eventCategory: this.cookieService.get(LocalStorageProperties.CompanyName) + \" - \" + eventCategory,\r\n eventLabel: eventLabel,\r\n eventAction: eventAction + \" by \" + this.cookieService.get(LocalStorageProperties.CurrentUserId),\r\n eventValue: eventValue\r\n });\r\n }\r\n}\r\n","export function removeClass(el, className) {\r\n if (!el || el.length === 0)\r\n return;\r\n if (!el.length) {\r\n el.classList.remove(className);\r\n } else {\r\n for (var i = 0; i < el.length; i++) {\r\n el[i].classList.remove(className)\r\n }\r\n }\r\n}\r\nexport function addClass(el, className) {\r\n const themeBaseColor = localStorage.getItem('themeColor');\r\n if (themeBaseColor) {\r\n document.documentElement.style.setProperty('--primary-theme-color', themeBaseColor);\r\n }\r\n if (!el)\r\n return;\r\n if (!el.length) {\r\n el.classList.add(className);\r\n } else {\r\n for (var i = 0; i < el.length; i++) {\r\n el[i].classList.add(className);\r\n }\r\n }\r\n}\r\nexport function findClosest(el, className) {\r\n if (!el)\r\n return;\r\n while (el) {\r\n var parent = el.parentElement;\r\n if (parent && hasClass(parent, className)) {\r\n return parent;\r\n }\r\n el = parent;\r\n }\r\n}\r\nexport function hasClass(el, className) {\r\n if (!el)\r\n return;\r\n return (` ${el.className} `).replace(/[\\n\\t]/g, ' ').indexOf(` ${className} `) > -1;\r\n}\r\nexport function toggleClass(el, className) {\r\n if (!el)\r\n return;\r\n if (hasClass(el, className)) {\r\n removeClass(el, className);\r\n } else {\r\n addClass(el, className);\r\n }\r\n}\r\nexport function changeTheme(themes: any[], themeName: string) {\r\n themes.forEach((theme) => {\r\n removeClass(document.body, theme.name);\r\n });\r\n addClass(document.body, themeName);\r\n};\r\nexport function ieChatjsFix() {\r\n if (window.hasOwnProperty('MSInputMethodContext') || document.hasOwnProperty('documentMode')) {\r\n document.body.style.width = '99.9%';\r\n setTimeout(() => {\r\n document.body.style.width = '100%';\r\n })\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport * as domHelper from \"../../globaldependencies/helpers/dom.helper\";\r\n\r\ninterface ITheme {\r\n name: string,\r\n baseColor?: string,\r\n isActive?: boolean\r\n}\r\n\r\n@Injectable()\r\nexport class ThemeService {\r\n egretThemes = [{\r\n name: 'egret-blue',\r\n baseColor: '#247ba0',\r\n isActive: false,\r\n companyThemeId: 'FD2ABC0F-F8D7-47C4-A7BD-BAA637E14BD5'\r\n },\r\n {\r\n name: \"egret-btrak\",\r\n baseColor: \"#3da8b5\",\r\n isActive: true,\r\n companyThemeId: '752471EB-94F4-4A33-8C3B-6E0A8D42F0D1'\r\n },\r\n {\r\n name: \"egret-default\",\r\n baseColor: \"#009999\",\r\n isActive: true,\r\n companyThemeId: 'B299BB1E-F6AE-4944-8DC0-50C7D01C8D72'\r\n },\r\n {\r\n name: 'egret-lime-green',\r\n baseColor: '#3ca956',\r\n isActive: false,\r\n companyThemeId: 'B5769B53-4718-4DFD-9201-E03C4D3A665E'\r\n },\r\n {\r\n name: 'egret-indigo',\r\n baseColor: '#3f51b5',\r\n isActive: false,\r\n companyThemeId: '9BC13630-98FE-4498-8557-465E4C64F444'\r\n },\r\n {\r\n name: 'egret-dark-blue',\r\n baseColor: '#0074A6',\r\n isActive: false,\r\n companyThemeId: 'A0C5B5F6-E9EA-442B-AFFB-77B9F631421E'\r\n },\r\n {\r\n name: 'egret-very-dark-magenta',\r\n baseColor: '#561f55',\r\n isActive: false,\r\n companyThemeId: 'DE636C82-4CB6-4F84-8730-CF2B9D9C39D4'\r\n },\r\n {\r\n name: \"egret-grayish-cyan\",\r\n baseColor: \"#9fa8a3\",\r\n isActive: false,\r\n companyThemeId: '0929D35A-3573-4B06-93FB-C7D46AAFA918'\r\n },\r\n {\r\n name: \"egret-desaturated-pink\",\r\n baseColor: \"#59323c\",\r\n isActive: false,\r\n companyThemeId: '576E2F5C-22DE-4D90-A21E-1ACA1364DC72'\r\n },\r\n {\r\n name: 'egret-desaturated-dark-cyan',\r\n baseColor: '#4e7b68 ',\r\n isActive: false,\r\n companyThemeId: 'C00FFAB9-6451-4820-A53B-CC4FFB6E07F0'\r\n },\r\n {\r\n name: 'egret-desaturated-orange',\r\n baseColor: '#a68572',\r\n isActive: false,\r\n companyThemeId: 'F3F05E52-6310-4C26-BE8C-690BA6380739'\r\n },\r\n {\r\n name: 'egret-soft-red',\r\n baseColor: '#eb6f7b',\r\n isActive: false,\r\n companyThemeId: '81CC4F29-5561-4FC8-AE72-A4F6C84B134E'\r\n },\r\n {\r\n name: 'egret-dark-yellow',\r\n baseColor: '#a89344',\r\n isActive: false,\r\n companyThemeId: '3F1FEFA0-977C-4DFA-B989-8CCD7E8D9047'\r\n },\r\n {\r\n name: 'egret-strong-blue',\r\n baseColor: '#06acc1',\r\n isActive: false,\r\n companyThemeId: 'A30D4C15-F90E-461D-A46B-17DBAEFEF70E'\r\n },\r\n {\r\n name: 'egret-dark-grayish-green',\r\n baseColor: '#9dab86',\r\n isActive: false,\r\n companyThemeId: '41692008-E752-40C2-B603-CF5570B32743'\r\n },\r\n {\r\n name: 'egret-moderate-orange',\r\n baseColor: '#d5763f',\r\n isActive: false,\r\n companyThemeId: 'EE551928-63C1-449A-97FB-B06361F82466'\r\n },\r\n {\r\n name: 'egret-bright-red',\r\n baseColor: '#fa4252',\r\n isActive: false,\r\n companyThemeId: '4C7E967D-27C0-4FF8-A73B-C654D3BFC2A8'\r\n },\r\n {\r\n name: 'egret-dark-moderate-violet',\r\n baseColor: '#52297B',\r\n isActive: false,\r\n companyThemeId: '10A47983-A043-44DF-9242-3BD5FF282208'\r\n },\r\n {\r\n name: 'egret-grayish-blue',\r\n baseColor: '#4b4e52',\r\n isActive: false,\r\n companyThemeId: '32BE8C7C-94AA-4F6D-B28E-D4DCF8B20609'\r\n },\r\n {\r\n name: 'egret-rebecca-purple',\r\n baseColor: '#662E8F',\r\n isActive: false,\r\n companyThemeId: '3E8A43CD-57D2-48FA-AD6B-4089845DC656'\r\n },\r\n {\r\n name: 'egret-bright-blue',\r\n baseColor: '#002060',\r\n isActive: false,\r\n companyThemeId: 'F6006F47-700C-4FC1-AE03-2242A212C836'\r\n }\r\n ];\r\n activatedThemeName: String;\r\n constructor() {\r\n }\r\n changeTheme(theme) {\r\n\r\n const themeColors = this.egretThemes;\r\n const filteredThemes = themeColors.filter((color) => {\r\n return color.companyThemeId.toLowerCase() === theme.companyThemeId.toLowerCase()\r\n })\r\n var currentTheme = filteredThemes[0] != undefined || filteredThemes[0] != null ? filteredThemes[0] : {\r\n name: 'egret-blue',\r\n baseColor: '#247ba0',\r\n isActive: false,\r\n companyThemeId: 'FD2ABC0F-F8D7-47C4-A7BD-BAA637E14BD5'};\r\n localStorage.setItem('themeColor', currentTheme.baseColor)\r\n domHelper.changeTheme(this.egretThemes, currentTheme.name);\r\n this.egretThemes.forEach((t) => {\r\n t.isActive = false;\r\n if (t.name === currentTheme.name) {\r\n t.isActive = true;\r\n this.activatedThemeName = currentTheme.name;\r\n }\r\n });\r\n }\r\n}\r\n","import { Injectable, HostListener } from \"@angular/core\";\r\nimport { BehaviorSubject } from \"rxjs\";\r\nimport { Observable } from 'rxjs';\r\nimport { Router } from \"@angular/router\";\r\nimport { ILayoutConf } from '../models/IlayoutConf';\r\nimport { ILayoutChangeOptions } from '../models/ILayout-change-options';\r\nimport { IAdjustScreenOptions } from '../models/IAdjust-screen-options';\r\n\r\n@Injectable()\r\nexport class LayoutService {\r\n public layoutConf: ILayoutConf = {};\r\n layoutConfSubject = new BehaviorSubject<ILayoutConf>(this.layoutConf);\r\n layoutConf$ = this.layoutConfSubject.asObservable();\r\n public isMobile: boolean;\r\n public currentRoute: string;\r\n public fullWidthRoutes = [];\r\n\r\n constructor(private router: Router) {\r\n this.setAppLayout();\r\n }\r\n\r\n setAppLayout() {\r\n this.layoutConf = {\r\n navigationPos: \"side\", // side, top\r\n sidebarStyle: \"compact\", // full, compact, closed\r\n dir: \"ltr\", // ltr, rtl\r\n useBreadcrumb: false,\r\n topbarFixed: true,\r\n breadcrumb: \"simple\" // simple, title\r\n };\r\n }\r\n\r\n publishLayoutChange(lc: ILayoutConf, opt: ILayoutChangeOptions = {}) {\r\n let duration = opt.duration || 250;\r\n if (!opt.transitionClass) {\r\n this.layoutConf = Object.assign(this.layoutConf, lc);\r\n return this.layoutConfSubject.next(this.layoutConf);\r\n }\r\n\r\n setTimeout(() => { window.dispatchEvent(new Event('resize')); }, 250) ;\r\n this.layoutConf = Object.assign(this.layoutConf, lc, {\r\n layoutInTransition: true\r\n });\r\n this.layoutConfSubject.next(this.layoutConf);\r\n\r\n setTimeout(() => {\r\n this.layoutConf = Object.assign(this.layoutConf, {\r\n layoutInTransition: false\r\n });\r\n this.layoutConfSubject.next(this.layoutConf);\r\n }, duration);\r\n }\r\n\r\n adjustLayout(options: IAdjustScreenOptions = {}) {\r\n let sidebarStyle: string;\r\n this.isMobile = this.isSm();\r\n this.currentRoute = options.route || this.currentRoute;\r\n sidebarStyle = this.isMobile ? \"closed\" : this.layoutConf.sidebarStyle;\r\n\r\n if (this.currentRoute) {\r\n this.fullWidthRoutes.forEach(route => {\r\n if (this.currentRoute.indexOf(route) !== -1) {\r\n sidebarStyle = \"closed\";\r\n }\r\n });\r\n }\r\n\r\n this.publishLayoutChange({\r\n isMobile: this.isMobile,\r\n sidebarStyle: sidebarStyle\r\n });\r\n }\r\n \r\n isSm() {\r\n return window.matchMedia(`(max-width: 959px)`).matches;\r\n }\r\n}\r\n","import { Action } from \"@ngrx/store\";\r\nimport { UserModel } from '../../models/user';\r\nimport { EntityRoleFeatureModel } from '../../models/entityRoleFeature';\r\nimport { ThemeModel } from '../../models/themes.model';\r\nimport { ValidationModel } from '../../models/validation.model';\r\nimport { StoreModel } from '../../models/store-model';\r\nimport { StoreSearchModel } from '../../models/store-search-model';\r\nimport { CompanysettingsModel } from '../../models/company-model';\r\n\r\nexport enum AuthenticationActionTypes {\r\n AuthenticateUser = \"[Snovasys-Shell] [Authentication] Authenticate User\",\r\n Authenticated = \"[Snovasys-Shell] [Authentication] Authenticated\",\r\n CompanyWorkItemStartFunctionalityRequired = \"[Snovasys-Shell] [Authentication] CompanyWorkItemStartFunctionalityRequired\",\r\n CompanyWorkItemStartFunctionalityRequiredFailed = \"[Snovasys-Shell] [Authentication] CompanyWorkItemStartFunctionalityRequired Failed\",\r\n CompanyWorkItemStartFunctionalityRequiredSuccess = \"[Snovasys-Shell] [Authentication] CompanyWorkItemStartFunctionalityRequired Success\",\r\n SignedOff = \"[Snovasys-Shell] [Authentication] Signed Off\",\r\n UserDetailsFetching = \"[Snovasys-Shell] [Authentication] Fetching User Details\",\r\n UserDetailsFetched = \"[Snovasys-Shell] [Authentication] Fetched User Details\",\r\n UserInitialDetailsFetched = \"[Snovasys-Shell] [Authentication] Fetched User Initial Details\",\r\n UserInitialDetailsFetchedCompleted = \"[Snovasys-Shell] [Authentication] Fetched User Initial Details Completed\",\r\n UserDetailsFetchedAfterLogin = \"[Snovasys-Shell] [Authentication] Fetched User Details After Login\",\r\n UserDetailsFetchedAfterCompanyLogin = \"[Snovasys-Shell] [Authentication] Fetched User Details After Company Login\",\r\n AuthenticationFailed = \"[Snovasys-Shell] [Authentication] Authentication Failed\",\r\n RoleDetailsFetchOnReload = \"[Snovasys-Shell] [Authentication] Role Details Fetched On Reload\",\r\n RoleDetailsFetched = \"[Snovasys-Shell] [Authentication] Role Details Fetched\",\r\n InitializeAfterLoginData = \"[Snovasys-Shell] [Authentication] Initialize after login data\",\r\n RolesFetchTriggered = \"[Snovasys-Shell] [Authentication] Fetching Roles Triggered\",\r\n RolesFetchFailed = '[Snovasys-Shell] [Authentication] Fetching Roles Failed',\r\n EntityRolesFetchTriggered = \"[Snovasys-Shell] [Authentication] Fetching Entity Roles Triggered\",\r\n EntityRoleDetailsFetched = \"[Snovasys-Shell] [Authentication] Entity Role Details Fetched\",\r\n EntityRolesByUserIdFetchTriggered = \"[Snovasys-Shell] [Authentication] Fetching Entity Roles By UserId Triggered\",\r\n EntityReolesByUserIdFetchCompleted = \"[Snovasys-Shell] [Authentication] Fetching EntityRoles By UserId Completed\",\r\n EntityRolesByUserIdFetchFailed = \"[Snovasys-Shell] [Authentication] Fetching EntityRoles By UserId Failed\",\r\n GetCompanyThemeTriggered = \"[Snovasys-Shell] [Authentication] GEt Company Theme Triggered\",\r\n GetCompanyThemeCompleted = \"[Snovasys-Shell] [Authentication] GEt Company Theme Completed\",\r\n GetCompanyThemeFailed = \"[Snovasys-Shell] [Authentication] GEt Company Theme Failed\",\r\n ClearDemoDataTriggred = \"[Snovasys-Shell] [Authentication] Clear Demo Data Triggred\",\r\n ClearDemoDataCompleted = \"[Snovasys-Shell] [Authentication] Clear Demo Data Completed\",\r\n ClearDemoDataFailed = \"[Snovasys-Shell] [Authentication] Clear Demo Data Failed\",\r\n GetUserStoreIdTriggered = '[Snovasys-Shell] [Authentication] Get User Store Id Triggered',\r\n GetUserStoreIdCompleted = '[Snovasys-Shell] [Authentication] Get User Store Id Completed',\r\n GetUserStoreIdFailed = '[Snovasys-Shell] [Authentication] Get User Store Id Failed',\r\n ExceptionHandled = '[Snovasys-Shell] [Authentication] Exception Handling',\r\n AuthenticateNewUser = \"[Snovasys-Shell] [Authentication] Authenticate New User\",\r\n GetCompanySettingsTriggered = \"[Snovasys-Shell] [Authentication] Get Company Settings Triggered\",\r\n GetCompanySettingsCompleted = \"[Snovasys-Shell] [Authentication] Get Company Settings Completed\",\r\n GetCompanySettingsFailed = \"[Snovasys-Shell] [Authentication] Get Company Settings Failed\",\r\n FetchTimeSheetButtonDetails = \"[Snovasys-Shell] [Authentication] Get Time Sheet Button Details\"\r\n}\r\n\r\nexport class AuthenticateUser implements Action {\r\n type = AuthenticationActionTypes.AuthenticateUser;\r\n public userId: string;\r\n public userToken: string;\r\n public userModel: UserModel;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n\r\n constructor(public userName: string, public password: string) { }\r\n}\r\n\r\nexport class AuthenticateNewUser implements Action {\r\n type = AuthenticationActionTypes.AuthenticateNewUser;\r\n public userId: string;\r\n public userToken: string;\r\n public userModel: UserModel;\r\n public errorMessage: string;\r\n\r\n constructor(public userName: string) { }\r\n}\r\n\r\nexport class Authenticated implements Action {\r\n type = AuthenticationActionTypes.Authenticated;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public userModel: UserModel;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor(public userName: string, public userToken: string) { }\r\n}\r\n\r\nexport class CompanyWorkItemStartFunctionalityRequired implements Action {\r\n type = AuthenticationActionTypes.CompanyWorkItemStartFunctionalityRequired;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public userModel: UserModel;\r\n public userName: string;\r\n public userToken: string;\r\n public loginData: any;\r\n public isStartEnabled: boolean;\r\n constructor() { }\r\n}\r\n\r\n\r\nexport class CompanyWorkItemStartFunctionalityRequiredSuccess implements Action {\r\n type = AuthenticationActionTypes.CompanyWorkItemStartFunctionalityRequiredSuccess;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public userModel: UserModel;\r\n public userName: string;\r\n public loginData: any;\r\n public userToken: string;\r\n\r\n constructor(public isStartEnabled: boolean) { }\r\n}\r\n\r\nexport class AuthenticationFailed implements Action {\r\n type = AuthenticationActionTypes.AuthenticationFailed;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public userModel: UserModel;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor(public errorMessage: string) { }\r\n}\r\n\r\nexport class SignedOff implements Action {\r\n type = AuthenticationActionTypes.SignedOff;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public userModel: UserModel;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor() { }\r\n}\r\n\r\nexport class UserDetailsFetched implements Action {\r\n type = AuthenticationActionTypes.UserDetailsFetched;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor(public userModel: UserModel) { }\r\n}\r\n\r\nexport class UserDetailsFetchedAfterLogin implements Action {\r\n type = AuthenticationActionTypes.UserDetailsFetchedAfterLogin;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor(public userModel: UserModel) { }\r\n}\r\n\r\nexport class UserDetailsFetchedAfterCompanyLogin implements Action {\r\n type = AuthenticationActionTypes.UserDetailsFetchedAfterCompanyLogin;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor(public userModel: UserModel) { }\r\n}\r\n\r\nexport class UserInitialDetailsFetched implements Action {\r\n type = AuthenticationActionTypes.UserInitialDetailsFetched;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n constructor(public userModel: UserModel) { }\r\n}\r\n\r\nexport class UserInitialDetailsFetchedCompleted implements Action {\r\n type = AuthenticationActionTypes.UserInitialDetailsFetchedCompleted;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n public userModel: UserModel;\r\n constructor(public userInitialData: any) { }\r\n}\r\n\r\nexport class FetchTimeSheetButtonDetails implements Action {\r\n type = AuthenticationActionTypes.FetchTimeSheetButtonDetails;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public loginData: any;\r\n public userModel: UserModel;\r\n constructor() { }\r\n}\r\n\r\nexport class UserDetailsFetching implements Action {\r\n type = AuthenticationActionTypes.UserDetailsFetching;\r\n public userName: string;\r\n public userToken: string;\r\n public userId: string;\r\n public password: string;\r\n public errorMessage: string;\r\n public isStartEnabled: boolean;\r\n public userModel: UserModel\r\n constructor(\r\n public loginData: any) { }\r\n}\r\n\r\nexport class RoleDetailsFetched implements Action {\r\n type = AuthenticationActionTypes.RoleDetailsFetched;\r\n\r\n constructor(public roleFeatures: any[]) { }\r\n}\r\n\r\nexport class RoleDetailsFetchOnReload implements Action {\r\n type = AuthenticationActionTypes.RoleDetailsFetchOnReload;\r\n\r\n constructor() { }\r\n}\r\n\r\nexport class InitializeAfterLoginData implements Action {\r\n type = AuthenticationActionTypes.InitializeAfterLoginData;\r\n\r\n constructor() { }\r\n}\r\n\r\nexport class RolesFetchTriggered implements Action {\r\n type = AuthenticationActionTypes.RolesFetchTriggered;\r\n\r\n constructor() { }\r\n}\r\n\r\nexport class RolesFetchFailed implements Action {\r\n type = AuthenticationActionTypes.RolesFetchFailed;\r\n constructor(public validationMessages: string[]) { }\r\n}\r\n\r\n\r\nexport class EntityRolesFetchTriggered implements Action {\r\n type = AuthenticationActionTypes.EntityRolesFetchTriggered;\r\n\r\n constructor(public projectId: string) { }\r\n}\r\n\r\n\r\nexport class EntityRolesByUserIdFetchTriggered implements Action {\r\n type = AuthenticationActionTypes.EntityRolesByUserIdFetchTriggered;\r\n\r\n constructor(public projectId: string, public requiredType: string, public isSprintType: boolean) { }\r\n}\r\n\r\n\r\nexport class EntityRoleDetailsFetched implements Action {\r\n type = AuthenticationActionTypes.EntityRoleDetailsFetched;\r\n\r\n constructor(public entityTypeRoleFeatures: EntityRoleFeatureModel[]) { }\r\n}\r\n\r\nexport class EntityReolesByUserIdFetchCompleted implements Action {\r\n type = AuthenticationActionTypes.EntityReolesByUserIdFetchCompleted;\r\n\r\n constructor(public entityTypeRoleFeatures: EntityRoleFeatureModel[]) { }\r\n}\r\n\r\n\r\nexport class EntityRolesByUserIdFetchFailed implements Action {\r\n type = AuthenticationActionTypes.EntityRolesByUserIdFetchFailed;\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\nexport class ClearDemoDataTriggred implements Action {\r\n type = AuthenticationActionTypes.ClearDemoDataTriggred;\r\n\r\n constructor() { }\r\n}\r\n\r\nexport class ClearDemoDataCompleted implements Action {\r\n type = AuthenticationActionTypes.ClearDemoDataCompleted;\r\n\r\n constructor(public companyId: string) { }\r\n}\r\n\r\nexport class ClearDemoDataFailed implements Action {\r\n type = AuthenticationActionTypes.ClearDemoDataFailed;\r\n\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\n\r\nexport class GetCompanyThemeTriggered implements Action {\r\n type = AuthenticationActionTypes.GetCompanyThemeTriggered;\r\n\r\n constructor() { }\r\n}\r\n\r\n\r\nexport class GetCompanyThemeCompleted implements Action {\r\n type = AuthenticationActionTypes.GetCompanyThemeCompleted;\r\n\r\n constructor(public themeModel: ThemeModel) { }\r\n}\r\n\r\nexport class GetCompanyThemeFailed implements Action {\r\n type = AuthenticationActionTypes.GetCompanyThemeFailed;\r\n\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\nexport class GetUserStoreIdTriggered implements Action {\r\n type = AuthenticationActionTypes.GetUserStoreIdTriggered;\r\n\r\n constructor(public searchUserStoreDetailsModel: StoreSearchModel) { }\r\n}\r\n\r\nexport class GetUserStoreIdCompleted implements Action {\r\n type = AuthenticationActionTypes.GetUserStoreIdCompleted;\r\n\r\n constructor(public userStoreDetails: StoreModel) { }\r\n}\r\n\r\n\r\nexport class GetCompanySettingsTriggered implements Action {\r\n type = AuthenticationActionTypes.GetCompanySettingsTriggered;\r\n\r\n constructor(public companySettingsModel: CompanysettingsModel) { }\r\n}\r\n\r\n\r\n\r\nexport class GetCompanySettingsCompleted implements Action {\r\n type = AuthenticationActionTypes.GetCompanySettingsCompleted;\r\n\r\n constructor(public companySettingsModel: any[]) { }\r\n}\r\n\r\n\r\nexport class GetCompanySettingsFailed implements Action {\r\n type = AuthenticationActionTypes.GetCompanySettingsFailed;\r\n\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\n\r\n\r\n\r\nexport class GetUserStoreIdFailed implements Action {\r\n type = AuthenticationActionTypes.GetUserStoreIdFailed;\r\n\r\n constructor(public validationMessages: any[]) { }\r\n}\r\n\r\nexport class ExceptionHandled implements Action {\r\n type = AuthenticationActionTypes.ExceptionHandled;\r\n\r\n constructor(public errorMessage: string) { }\r\n}\r\n\r\nexport type AuthenticationActions =\r\n | AuthenticateUser\r\n | Authenticated\r\n | SignedOff\r\n | UserDetailsFetching\r\n | UserDetailsFetched\r\n | UserDetailsFetchedAfterLogin\r\n | UserDetailsFetchedAfterCompanyLogin\r\n | UserInitialDetailsFetched\r\n | UserInitialDetailsFetchedCompleted\r\n | AuthenticationFailed\r\n | CompanyWorkItemStartFunctionalityRequired\r\n | CompanyWorkItemStartFunctionalityRequiredSuccess\r\n | AuthenticateNewUser\r\n","import { Action } from \"@ngrx/store\";\r\nimport {\r\n AuthenticationActionTypes,\r\n CompanyWorkItemStartFunctionalityRequiredSuccess,\r\n AuthenticationActions,\r\n AuthenticationFailed,\r\n RoleDetailsFetched,\r\n EntityRoleDetailsFetched,\r\n EntityReolesByUserIdFetchCompleted,\r\n GetCompanyThemeCompleted,\r\n GetUserStoreIdCompleted,\r\n GetCompanySettingsCompleted,\r\n UserInitialDetailsFetchedCompleted\r\n} from \"../actions/authentication.actions\";\r\nimport { UserModel } from '../../models/user';\r\nimport { ThemeModel } from '../../models/themes.model';\r\nimport { EntityRoleFeatureModel } from '../../models/entityRoleFeature';\r\nimport { TimesheetDisableorEnable } from '../../models/timesheetenabledisable';\r\n\r\nexport interface State {\r\n errorWhileLoggingIn: string;\r\n userId: string;\r\n userName: string;\r\n userModel: UserModel;\r\n loadingEntityFeatures: boolean;\r\n loadingUserEntityFeatures: boolean;\r\n deletingDemoData: boolean;\r\n loadingRoleFeatures: boolean;\r\n userToken: string;\r\n userLoggedIn: boolean;\r\n userLoggingIn: boolean;\r\n roleFeatures: any[];\r\n entityTypeRoleFeatures: EntityRoleFeatureModel[];\r\n rolePermissionsList: EntityRoleFeatureModel[];\r\n themeModel: ThemeModel;\r\n gettingUserStoreId: boolean;\r\n userStoreId: string;\r\n isStartEnabled: boolean;\r\n companySettingsModel: any[];\r\n TimeSheetRestrictedData: TimesheetDisableorEnable;\r\n isTimeSheetFetching: boolean;\r\n}\r\n\r\nexport const initialState: State = {\r\n userId: null,\r\n userName: null,\r\n userModel: null,\r\n loadingEntityFeatures: true,\r\n loadingUserEntityFeatures: true,\r\n loadingRoleFeatures: true,\r\n deletingDemoData: false,\r\n userLoggedIn: false,\r\n userLoggingIn: false,\r\n userToken: null,\r\n errorWhileLoggingIn: null,\r\n roleFeatures: [],\r\n entityTypeRoleFeatures: [],\r\n rolePermissionsList: [],\r\n themeModel: null,\r\n gettingUserStoreId: false,\r\n userStoreId: '',\r\n isStartEnabled: false,\r\n companySettingsModel: [],\r\n TimeSheetRestrictedData: null,\r\n isTimeSheetFetching: false\r\n};\r\n\r\nexport function reducer(state: State = initialState, action: Action): State {\r\n switch (action.type) {\r\n case AuthenticationActionTypes.AuthenticateUser:\r\n return { ...initialState, userLoggingIn: true ,\r\n //userLoggingIn: false,\r\n userLoggedIn: true,\r\n userToken: (action as AuthenticationActions).userToken,\r\n errorWhileLoggingIn: null};\r\n\r\n case AuthenticationActionTypes.AuthenticateNewUser:\r\n return { ...initialState, userLoggingIn: true };\r\n\r\n case AuthenticationActionTypes.CompanyWorkItemStartFunctionalityRequiredSuccess:\r\n return {\r\n ...state,\r\n isStartEnabled: (action as CompanyWorkItemStartFunctionalityRequiredSuccess).isStartEnabled\r\n };\r\n\r\n case AuthenticationActionTypes.Authenticated:\r\n return {\r\n ...state,\r\n userLoggingIn: false,\r\n userLoggedIn: true,\r\n userToken: (action as AuthenticationActions).userToken,\r\n errorWhileLoggingIn: null\r\n };\r\n\r\n case AuthenticationActionTypes.SignedOff:\r\n return initialState;\r\n\r\n case AuthenticationActionTypes.AuthenticationFailed:\r\n return {\r\n ...state,\r\n userLoggingIn: false,\r\n userLoggedIn: false,\r\n userToken: null,\r\n errorWhileLoggingIn: (action as AuthenticationFailed).errorMessage\r\n };\r\n\r\n case AuthenticationActionTypes.UserDetailsFetched:\r\n return {\r\n ...state,\r\n userModel: (action as AuthenticationActions).userModel\r\n };\r\n\r\n case AuthenticationActionTypes.UserDetailsFetchedAfterLogin:\r\n return {\r\n ...state,\r\n userModel: (action as AuthenticationActions).userModel\r\n };\r\n\r\n case AuthenticationActionTypes.RoleDetailsFetched:\r\n return {\r\n ...state,\r\n loadingRoleFeatures: false,\r\n roleFeatures: (action as RoleDetailsFetched).roleFeatures\r\n };\r\n case AuthenticationActionTypes.EntityRoleDetailsFetched:\r\n return {\r\n ...state,\r\n loadingEntityFeatures: false,\r\n entityTypeRoleFeatures: (action as EntityRoleDetailsFetched).entityTypeRoleFeatures\r\n };\r\n case AuthenticationActionTypes.EntityReolesByUserIdFetchCompleted:\r\n return {\r\n ...state,\r\n loadingUserEntityFeatures: false,\r\n rolePermissionsList: (action as EntityReolesByUserIdFetchCompleted).entityTypeRoleFeatures\r\n };\r\n case AuthenticationActionTypes.ClearDemoDataTriggred:\r\n return {\r\n ...state,\r\n deletingDemoData: true,\r\n };\r\n case AuthenticationActionTypes.ClearDemoDataCompleted:\r\n return {\r\n ...state,\r\n deletingDemoData: false,\r\n };\r\n case AuthenticationActionTypes.ClearDemoDataFailed:\r\n return {\r\n ...state,\r\n deletingDemoData: false,\r\n };\r\n case AuthenticationActionTypes.GetCompanyThemeTriggered:\r\n return {\r\n ...state\r\n };\r\n case AuthenticationActionTypes.GetCompanyThemeCompleted:\r\n return {\r\n ...state,\r\n themeModel: (action as GetCompanyThemeCompleted).themeModel\r\n };\r\n case AuthenticationActionTypes.GetCompanyThemeFailed:\r\n return {\r\n ...state\r\n };\r\n case AuthenticationActionTypes.GetCompanySettingsTriggered:\r\n return {\r\n ...state\r\n };\r\n case AuthenticationActionTypes.GetCompanySettingsCompleted:\r\n return {\r\n ...state,\r\n companySettingsModel: (action as GetCompanySettingsCompleted).companySettingsModel\r\n };\r\n case AuthenticationActionTypes.GetCompanySettingsFailed:\r\n return {\r\n ...state\r\n };\r\n case AuthenticationActionTypes.EntityRolesByUserIdFetchTriggered:\r\n return { ...state, loadingEntityFeatures: true };\r\n case AuthenticationActionTypes.GetUserStoreIdTriggered:\r\n return { ...state, gettingUserStoreId: true };\r\n case AuthenticationActionTypes.GetUserStoreIdCompleted:\r\n return { ...state, gettingUserStoreId: false, userStoreId: (action as GetUserStoreIdCompleted).userStoreDetails.storeId };\r\n case AuthenticationActionTypes.ExceptionHandled:\r\n return { ...state, gettingUserStoreId: false, loadingEntityFeatures: false };\r\n case AuthenticationActionTypes.FetchTimeSheetButtonDetails:\r\n return { ...state, isTimeSheetFetching: true};\r\n case AuthenticationActionTypes.UserInitialDetailsFetchedCompleted:\r\n return { ...state, isTimeSheetFetching: false, TimeSheetRestrictedData: (action as UserInitialDetailsFetchedCompleted).userInitialData ? \r\n JSON.parse((action as UserInitialDetailsFetchedCompleted).userInitialData) : null\r\n }\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { Action } from \"@ngrx/store\";\r\nimport { AppMenuItemModel } from '../../models/AppMenuItemModel';\r\nimport { ValidationModel } from '../../models/validation.model';\r\n\r\nexport enum MenuItemActionTypes {\r\n GetAllMenuItemsTriggered = \"[Snovasys-Shell] [MenuItems] Get All Menu Items Triggered\",\r\n GetAllMenuItemsCompleted = \"[Snovasys-Shell] [MenuItems] Get All Menu Items Completed\",\r\n GetAllMenuItemsFailed = \"[Snovasys-Shell] [MenuItems] Get All Menu Items Failed\",\r\n ExceptionHandled = \"[Snovasys-Shell] [MenuItems] Exception Handled\",\r\n CategoryChangeRequested = \"[Snovasys-Shell] [MenuItems] Category Change Requested\"\r\n}\r\n\r\nexport class GetAllMenuItemsTriggered implements Action {\r\n type = MenuItemActionTypes.GetAllMenuItemsTriggered;\r\n menuItems: AppMenuItemModel[];\r\n validationMessages: ValidationModel[];\r\n errorMessage: string;\r\n constructor(public menuCategory: string) { }\r\n}\r\n\r\nexport class GetAllMenuItemsCompleted implements Action {\r\n type = MenuItemActionTypes.GetAllMenuItemsCompleted;\r\n validationMessages: ValidationModel[];\r\n menuCategory: string;\r\n errorMessage: string;\r\n constructor(public menuItems: AppMenuItemModel[]) { }\r\n}\r\n\r\nexport class GetAllMenuItemsFailed implements Action {\r\n type = MenuItemActionTypes.GetAllMenuItemsFailed;\r\n menuItems: AppMenuItemModel[];\r\n menuCategory: string;\r\n errorMessage: string;\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\nexport class CategoryChangeRequested implements Action {\r\n type = MenuItemActionTypes.CategoryChangeRequested;\r\n menuItems: AppMenuItemModel[];\r\n validationMessages: ValidationModel[];\r\n errorMessage: string;\r\n constructor(public menuCategory: string) { }\r\n}\r\n\r\n\r\nexport class ExceptionHandled implements Action {\r\n type = MenuItemActionTypes.ExceptionHandled;\r\n menuItems: AppMenuItemModel[];\r\n validationMessages: ValidationModel[];\r\n menuCategory: string;\r\n constructor(public errorMessage: string) { }\r\n}\r\n\r\nexport type MenuItemsActions =\r\n | GetAllMenuItemsTriggered\r\n | GetAllMenuItemsCompleted\r\n | GetAllMenuItemsFailed\r\n | CategoryChangeRequested\r\n | ExceptionHandled;\r\n","import { Action } from \"@ngrx/store\";\r\nimport {\r\n MenuItemActionTypes,\r\n MenuItemsActions\r\n} from \"../actions/menuitems.actions\";\r\nimport { EntityState, EntityAdapter, createEntityAdapter } from \"@ngrx/entity\";\r\nimport { IMenuItem } from '../../models/IMenuItem';\r\n\r\nexport interface State extends EntityState<IMenuItem> {\r\n error: string;\r\n menuItemsLoading: boolean;\r\n menuCategory: string;\r\n}\r\n\r\nexport const menuItemsAdapter: EntityAdapter<IMenuItem> = createEntityAdapter<\r\n IMenuItem\r\n>({\r\n selectId: (appMenuItemModel: IMenuItem) => appMenuItemModel.id\r\n});\r\n\r\nexport const initialState: State = menuItemsAdapter.getInitialState({\r\n error: null,\r\n menuItemsLoading: false,\r\n menuCategory: \"Main\"\r\n});\r\n\r\nexport function reducer(state: State = initialState, action: Action): State {\r\n switch (action.type) {\r\n case MenuItemActionTypes.GetAllMenuItemsTriggered:\r\n return {\r\n ...state,\r\n menuItemsLoading: true,\r\n error: null,\r\n menuCategory: (action as MenuItemsActions).menuCategory\r\n };\r\n\r\n case MenuItemActionTypes.GetAllMenuItemsCompleted:\r\n var allFetchedMenuItems = (action as MenuItemsActions).menuItems;\r\n // var allParentMenuItems: IMenuItem[] = [];\r\n\r\n // for (let menuItemFromServer of allFetchedMenuItems) {\r\n // if (menuItemFromServer.parentMenu === null) {\r\n // allParentMenuItems.push({\r\n // id: menuItemFromServer.id,\r\n // type: menuItemFromServer.type,\r\n // menu: menuItemFromServer.menu,\r\n // state: menuItemFromServer.state,\r\n // icon: menuItemFromServer.icon,\r\n // tooltip: menuItemFromServer.toolTip,\r\n // disabled: false,\r\n // sub: [],\r\n // badges: [],\r\n // menuCategory: menuItemFromServer.menuCategory\r\n // });\r\n // }\r\n // }\r\n\r\n // for (let parentMenuItem of allParentMenuItems) {\r\n // for (let menuItemFromServer of allFetchedMenuItems) {\r\n // if (parentMenuItem.id == menuItemFromServer.parentMenuItemId) {\r\n // parentMenuItem.sub.push({\r\n // type: menuItemFromServer.type,\r\n // name: menuItemFromServer.menu,\r\n // state: menuItemFromServer.state,\r\n // icon: menuItemFromServer.icon,\r\n // sub: []\r\n // });\r\n // }\r\n // }\r\n // }\r\n\r\n return menuItemsAdapter.addAll(allFetchedMenuItems, {\r\n ...state,\r\n menuItemsLoading: false,\r\n error: null\r\n });\r\n\r\n case MenuItemActionTypes.GetAllMenuItemsFailed:\r\n return menuItemsAdapter.removeAll({\r\n ...state,\r\n menuItemsLoading: false,\r\n error: (action as MenuItemsActions).errorMessage\r\n });\r\n\r\n case MenuItemActionTypes.CategoryChangeRequested:\r\n return {\r\n ...state,\r\n menuCategory: (action as MenuItemsActions).menuCategory\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { Action } from \"@ngrx/store\";\r\nimport { Update } from \"@ngrx/entity\";\r\nimport { ValidationModel } from '../../models/validation.model';\r\nimport { NotificationOutputModel, UserNotificationReadModel } from '../../models/NotificationsOutPutModel';\r\nimport { AppNotification } from '../../models/AppNotification';\r\n\r\nexport enum NotificationsActionTypes {\r\n NewNotificationReceived = \"[Snovasys-Shell] [Notifications] New Notification Received\",\r\n ClearAllNotifications = \"[Snovasys-Shell] [Notifications] Clear All Notifications\",\r\n ClearAllUnreadNotificationsTriggered = \"[Snovasys-Shell] [Notifications] Clear All Unread Notifications\",\r\n ClearUnreadNotificationsTriggered = \"[Snovasys-Shell] [Notifications] Clear Unread Notifications\",\r\n ClearAllUnreadNotificationsFailed = \"[Snovasys-Shell] [Notifications] Clear All Unread Notifications failed\",\r\n ClearAllUnreadNotificationsCompleted = \"[Snovasys-Shell] [Notifications] Clear All Unread Notifications completed\",\r\n UpsertUnreadNotificationsFailed = \"[Snovasys-Shell] [Notifications] Upsert read Notifications failed\",\r\n UpsertUnreadNotificationsTriggered = \"[Snovasys-Shell] [Notifications] Upsert read Notifications\",\r\n UpsertUnreadNotificationsCompleted = \"[Snovasys-Shell] [Notifications] Upsert read Notifications completed\",\r\n ExceptionHandled = \"[Project Component] HandleException\",\r\n}\r\n\r\nexport class NewNotificationReceived implements Action {\r\n type = NotificationsActionTypes.NewNotificationReceived;\r\n validationMessages: ValidationModel[];\r\n errorMessage: string;\r\n notifications: NotificationOutputModel[];\r\n notificationId: string\r\n\r\n constructor(public notification: NotificationOutputModel) { }\r\n}\r\n\r\nexport class ClearAllNotifications implements Action {\r\n type = NotificationsActionTypes.ClearAllNotifications;\r\n notification: AppNotification;\r\n errorMessage: string;\r\n validationMessages: ValidationModel[];\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public readNotifications: UserNotificationReadModel[]) { }\r\n}\r\n\r\nexport class ClearAllUnreadNotificationsTriggered implements Action {\r\n type = NotificationsActionTypes.ClearAllUnreadNotificationsTriggered;\r\n errorMessage: string;\r\n validationMessages: ValidationModel[];\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public notification: AppNotification) { }\r\n}\r\n\r\n\r\nexport class ClearUnreadNotificationsTriggered implements Action {\r\n type = NotificationsActionTypes.ClearUnreadNotificationsTriggered;\r\n errorMessage: string;\r\n validationMessages: ValidationModel[];\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public notification: AppNotification) { }\r\n}\r\n\r\n\r\nexport class ClearAllUnreadNotificationsCompleted implements Action {\r\n type = NotificationsActionTypes.ClearAllUnreadNotificationsCompleted;\r\n notification: AppNotification;\r\n errorMessage: string;\r\n validationMessages: ValidationModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public notifications: NotificationOutputModel[]) { }\r\n}\r\n\r\nexport class ClearAllUnreadNotificationsFailed implements Action {\r\n type = NotificationsActionTypes.ClearAllUnreadNotificationsFailed;\r\n notification: AppNotification;\r\n errorMessage: string;\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\nexport class UpsertUnreadNotificationsTriggered implements Action {\r\n type = NotificationsActionTypes.UpsertUnreadNotificationsTriggered;\r\n errorMessage: string;\r\n validationMessages: ValidationModel[];\r\n notifications: NotificationOutputModel[];\r\n notificationId: string\r\n\r\n constructor(public upsertNotification: UserNotificationReadModel[]) { }\r\n}\r\n\r\nexport class UpsertUnreadNotificationsCompleted implements Action {\r\n type = NotificationsActionTypes.UpsertUnreadNotificationsCompleted;\r\n notification: AppNotification;\r\n errorMessage: string;\r\n validationMessages: ValidationModel[];\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n\r\n constructor(public notificationId: string) { }\r\n}\r\n\r\nexport class UpsertUnreadNotificationsFailed implements Action {\r\n type = NotificationsActionTypes.UpsertUnreadNotificationsFailed;\r\n notification: AppNotification;\r\n errorMessage: string;\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public validationMessages: ValidationModel[]) { }\r\n}\r\n\r\nexport class ExceptionHandled implements Action {\r\n type = NotificationsActionTypes.ClearAllUnreadNotificationsFailed;\r\n notification: AppNotification;\r\n validationMessages: ValidationModel[];\r\n notifications: NotificationOutputModel[];\r\n upsertNotification: UserNotificationReadModel;\r\n notificationId: string\r\n\r\n constructor(public errorMessage: string) { }\r\n}\r\n\r\nexport type NotificationActions =\r\n | NewNotificationReceived\r\n | ClearAllNotifications\r\n | ClearAllUnreadNotificationsTriggered\r\n | ClearAllUnreadNotificationsCompleted\r\n | ClearAllUnreadNotificationsFailed\r\n | UpsertUnreadNotificationsFailed\r\n | UpsertUnreadNotificationsTriggered\r\n | UpsertUnreadNotificationsCompleted\r\n | ClearUnreadNotificationsTriggered\r\n | ExceptionHandled;\r\n","import { EntityState, createEntityAdapter, EntityAdapter } from \"@ngrx/entity\";\r\nimport {\r\n NotificationsActionTypes,\r\n NewNotificationReceived,\r\n NotificationActions\r\n} from \"../actions/notifications.actions\";\r\nimport { NotificationOutputModel } from '../../models/NotificationsOutPutModel';\r\n\r\nexport interface State extends EntityState<NotificationOutputModel> {\r\n loadingNotifications: boolean;\r\n}\r\n\r\nexport function sortByDateTime(a: NotificationOutputModel, b: NotificationOutputModel): any {\r\n return b.notificationCreatedDateTime - a.notificationCreatedDateTime\r\n}\r\n\r\nexport const notificationsAdapter: EntityAdapter<\r\n NotificationOutputModel\r\n> = createEntityAdapter<NotificationOutputModel>({\r\n selectId: (notifications: NotificationOutputModel) => notifications.notificationId,\r\n sortComparer: sortByDateTime\r\n});\r\n\r\nexport const initialState: State = notificationsAdapter.getInitialState({\r\n loadingNotifications: false,\r\n});\r\n\r\nexport function reducer(state: State = initialState, action: NotificationActions): State {\r\n switch (action.type) {\r\n case NotificationsActionTypes.NewNotificationReceived:\r\n return notificationsAdapter.addOne(\r\n (action as NewNotificationReceived).notification,\r\n state\r\n );\r\n case NotificationsActionTypes.ClearAllNotifications:\r\n return notificationsAdapter.removeAll(state);\r\n case NotificationsActionTypes.UpsertUnreadNotificationsCompleted:\r\n state = notificationsAdapter.removeOne(action.notificationId, state);\r\n return { ...state };\r\n case NotificationsActionTypes.ClearAllUnreadNotificationsCompleted:\r\n return notificationsAdapter.addMany(action.notifications, {\r\n ...state, loadingNotifications: false\r\n });\r\n case NotificationsActionTypes.ClearAllUnreadNotificationsTriggered:\r\n return { ...initialState, loadingNotifications: true };\r\n case NotificationsActionTypes.ClearUnreadNotificationsTriggered:\r\n return notificationsAdapter.updateMany(\r\n [...state.ids].map((NotificationId: string) => ({\r\n id: NotificationId,\r\n changes: {\r\n isRead: false\r\n },\r\n loadingNotifications: true\r\n })),\r\n state\r\n );\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","\r\nimport { Action } from \"@ngrx/store\";\r\nimport { ValidationModel } from '../../models/validation.model';\r\n\r\nexport enum ValidationActionTypes {\r\n ShowExceptionMessages = \"[Snovasys-Shell] [Exception] Show\",\r\n ShowValidationMessages = \"[Snovasys-Shell] [Validation] Show\"\r\n}\r\n\r\nexport class ShowExceptionMessages implements Action {\r\n readonly type = ValidationActionTypes.ShowExceptionMessages;\r\n constructor(public payload: { message: string }) { }\r\n}\r\n\r\n// tslint:disable-next-line: max-classes-per-file\r\nexport class ShowValidationMessages implements Action {\r\n readonly type = ValidationActionTypes.ShowValidationMessages;\r\n constructor(public payload: { validationMessages: ValidationModel[] }) { }\r\n}\r\n\r\nexport type ValidationAction = ShowExceptionMessages\r\n | ShowValidationMessages;\r\n","import {\r\n ValidationActionTypes,\r\n ValidationAction,\r\n} from \"../actions/notification-validator.action\"\r\n \r\n export interface State {\r\n show: boolean;\r\n }\r\n \r\n const initialState: State = {\r\n show: false\r\n };\r\n \r\n export function reducer(state: State = initialState, action: ValidationAction) {\r\n switch (action.type) {\r\n case ValidationActionTypes.ShowExceptionMessages:\r\n return { ...state, show: true };\r\n \r\n default:\r\n return state;\r\n }\r\n }\r\n ","import { Action } from \"@ngrx/store\";\r\nimport { MessageDetails } from \"../../models/MessageDetails\";\r\nimport { EmployeeStatusModel } from \"../../models/EmployeeStatusModel\";\r\nimport { InitialStatusOfUsers } from \"../../models/initialStatusofUsers\";\r\nimport { ChannelUpdateModel } from \"../../models/ChannelUpdateModel\";\r\nimport { MessageTypingDetails} from '../../models/MessageTypingDetails';\r\n\r\n\r\nexport enum MessageActionTypes {\r\n // Message Sending from chat-web to shell\r\n MessageTriggered = \"[Snovasys-Shell] [chat-web-module] MessageTriggered\",\r\n MessageCompleted = \"[Snovasys-Shell] [chat-web-module] MessageCompleted\",\r\n MessageFailed = \"[Snovasys-Shell] [chat-web-module] MessageFailed\",\r\n //Message Receiving shell to chat-web\r\n ReceiveMessageTriggered = \"[Snovasys-Shell] [chat-web-module] ReceiveMessageTriggered\",\r\n ReceiveMessageCompleted = \"[Snovasys-Shell] [chat-web-module] ReceiveMessageCompleted\",\r\n ReceiveMessageFailed = \"[Snovasys-Shell] [chat-web-module] ReceiveMessageFailed\",\r\n // Newly joined people status\r\n PresenceEventTriggered = \"[Snovasys-Shell] [chat-web-module] PresenceEventTriggered\",\r\n PresenceEventCompleted = \"[Snovasys-Shell] [chat-web-module] PresenceEventCompleted\",\r\n PresenceEventFailed = \"[Snovasys-Shell] [chat-web-module] PresenceEventFailed\",\r\n // Message Unread Count of Shell\r\n CountTriggered = \"[Snovasys-Shell] [chat-web-module] CountTriggered\",\r\n CountCompleted = \"[Snovasys-Shell] [chat-web-module] CountCompleted\",\r\n CountFailed = \"[Snovasys-Shell] [chat-web-module] CountFailed\",\r\n //Previously joined people status\r\n InitalStateOfUsersTriggered = \"[Snovasys-Shell] [chat-web-module] InitalStateOfUsersTriggered\",\r\n InitalStateOfUsersCompleted = \"[Snovasys-Shell] [chat-web-module] InitalStateOfUsersCompleted\",\r\n InitalStateOfUsersFailed = \"[Snovasys-Shell] [chat-web-module] InitalStateOfUsersFailed\",\r\n //When we open the chat-web messenger this trigger will hit\r\n RequestingStateOfUsersTriggered = \"[Snovasys-Shell] [chat-web-module] RequestingStateOfUsersTriggered\",\r\n RequestingStateOfUsersCompleted = \"[Snovasys-Shell] [chat-web-module] RequestingStateOfUsersCompleted\",\r\n RequestingStateOfUsersFailed = \"[Snovasys-Shell] [chat-web-module] RequestingStateOfUsersFailed\",\r\n //Sending TOpic details (chat-web to shell)\r\n SendChannelUpdateModelTriggered = \"[Snovasys-Shell] [chat-web-module] SendChannelUpdateModelTriggered\",\r\n SendChannelUpdateModelCompleted = \"[Snovasys-Shell] [chat-web-module] SendChannelUpdateModelCompleted\",\r\n SendChannelUpdateModelFailed = \"[Snovasys-Shell] [chat-web-module] SendChannelUpdateModelFailed\",\r\n //Receiving Topic details (shell to chat-web)\r\n ReceiveChannelUpdateModelTriggered = \"[Snovasys-Shell] [chat-web-module] ReceiveChannelUpdateModelTriggered\",\r\n ReceiveChannelUpdateModelCompleted = \"[Snovasys-Shell] [chat-web-module] ReceiveChannelUpdateModelCompleted\",\r\n ReceiveChannelUpdateModelFailed = \"[Snovasys-Shell] [chat-web-module] ReceiveChannelUpdateModelFailed\",\r\n //Sending Typing model (chat-web to shell)\r\n SendingSignalTriggered = \"[Snovasys-Shell] [chat-web-module] SendingSignalTriggered\",\r\n SendingSignalCompleted = \"[Snovasys-Shell] [chat-web-module] SendingSignalCompleted\",\r\n SendingSignalFailed = \"[Snovasys-Shell] [chat-web-module] SendingSignalFailed\",\r\n //Receiving SignalEvent response (shell to chat-web)\r\n ReceiveSignalTriggered = \"[Snovasys-Shell] [chat-web-module] ReceiveSignalTriggered\",\r\n ReceiveSignalCompleted = \"[Snovasys-Shell] [chat-web-module] ReceiveSignalCompleted\",\r\n ReceiveSignalFailed = \"[Snovasys-Shell] [chat-web-module] ReceiveSignalFailed\",\r\n}\r\nexport class MessageTriggered implements Action {\r\n type = MessageActionTypes.MessageTriggered;\r\n public errorMessage: string;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public messageDetails: MessageDetails) { }\r\n}\r\n\r\nexport class MessageCompleted implements Action {\r\n type = MessageActionTypes.MessageCompleted;\r\n public errorMessage: string;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public messageDetails: MessageDetails) { }\r\n}\r\n\r\nexport class MessageFailed implements Action {\r\n type = MessageActionTypes.MessageFailed;\r\n public messageDetails: MessageDetails;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { }\r\n}\r\nexport class ReceiveMessageTriggered implements Action {\r\n type = MessageActionTypes.ReceiveMessageTriggered;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public messageDetails: MessageDetails) { }\r\n}\r\n\r\nexport class ReceiveMessageCompleted implements Action {\r\n type = MessageActionTypes.ReceiveMessageCompleted;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public messageDetails: MessageDetails) { }\r\n}\r\n\r\nexport class ReceiveMessageFailed implements Action {\r\n type = MessageActionTypes.ReceiveMessageFailed;\r\n public messageDetails: MessageDetails;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { }\r\n}\r\nexport class PresenceEventTriggered implements Action {\r\n type = MessageActionTypes.PresenceEventTriggered;\r\n public errorMessage: string;\r\n public messageDetails: MessageDetails;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public employeeStatusModel: EmployeeStatusModel) { };\r\n}\r\n\r\nexport class PresenceEventCompleted implements Action {\r\n type = MessageActionTypes.PresenceEventCompleted;\r\n public errorMessage: string;\r\n public messageDetails: MessageDetails;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public employeeStatusModel: EmployeeStatusModel) { };\r\n}\r\n\r\nexport class PresenceEventFailed implements Action {\r\n type = MessageActionTypes.PresenceEventFailed;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public messageDetails: MessageDetails;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\n\r\nexport class CountTriggered implements Action {\r\n type = MessageActionTypes.CountTriggered;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public messageCount: number) { };\r\n}\r\n\r\nexport class CountCompleted implements Action {\r\n type = MessageActionTypes.CountCompleted;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public messageCount: number) { };\r\n}\r\n\r\nexport class CountFailed implements Action {\r\n type = MessageActionTypes.CountFailed;\r\n public messageCount: number;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\n\r\nexport class InitalStateOfUsersTriggered implements Action {\r\n type = MessageActionTypes.InitalStateOfUsersTriggered;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public initialStatusOfUsers: InitialStatusOfUsers) { };\r\n}\r\nexport class InitalStateOfUsersCompleted implements Action {\r\n type = MessageActionTypes.InitalStateOfUsersCompleted;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public initialStatusOfUsers: InitialStatusOfUsers) { };\r\n}\r\n\r\nexport class InitalStateOfUsersFailed implements Action {\r\n type = MessageActionTypes.InitalStateOfUsersFailed;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\nexport class RequestingStateOfUsersTriggered implements Action {\r\n type = MessageActionTypes.RequestingStateOfUsersTriggered;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public gotColleagues: boolean) { };\r\n}\r\nexport class RequestingStateOfUsersCompleted implements Action {\r\n type = MessageActionTypes.RequestingStateOfUsersCompleted;\r\n public errorMessage: string;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public gotColleagues: boolean) { };\r\n}\r\n\r\nexport class RequestingStateOfUsersFailed implements Action {\r\n type = MessageActionTypes.RequestingStateOfUsersFailed;\r\n public messageCount: number;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\nexport class SendChannelUpdateModelTriggered implements Action {\r\n type = MessageActionTypes. SendChannelUpdateModelTriggered;\r\n public errorMessage: string;\r\n public gotColleagues: boolean\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public channelUpdateModel: ChannelUpdateModel) { };\r\n}\r\nexport class SendChannelUpdateModelCompleted implements Action {\r\n type = MessageActionTypes. SendChannelUpdateModelCompleted;\r\n public errorMessage: string;\r\n public gotColleagues: boolean\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public channelUpdateModel: ChannelUpdateModel) { };\r\n}\r\n\r\nexport class SendChannelUpdateModelFailed implements Action {\r\n type = MessageActionTypes. SendChannelUpdateModelFailed;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\nexport class ReceiveChannelUpdateModelTriggered implements Action {\r\n type = MessageActionTypes. ReceiveChannelUpdateModelTriggered;\r\n public errorMessage: string;\r\n public gotColleagues: boolean\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public channelUpdateModel: ChannelUpdateModel) { };\r\n}\r\nexport class ReceiveChannelUpdateModelCompleted implements Action {\r\n type = MessageActionTypes. ReceiveChannelUpdateModelCompleted;\r\n public errorMessage: string;\r\n public gotColleagues: boolean\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public channelUpdateModel: ChannelUpdateModel) { };\r\n}\r\n\r\nexport class ReceiveChannelUpdateModelFailed implements Action {\r\n type = MessageActionTypes. ReceiveChannelUpdateModelFailed;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\n\r\nexport class SendingSignalTriggered implements Action{\r\n type = MessageActionTypes.SendingSignalTriggered;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public errorMessage :string;\r\n constructor(public messageTypingDetails:MessageTypingDetails) { };\r\n}\r\nexport class SendingSignalCompleted implements Action{\r\n type = MessageActionTypes.SendingSignalCompleted;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public errorMessage :string;\r\n constructor(public messageTypingDetails:MessageTypingDetails) { };\r\n}\r\nexport class SendingSignalFailed implements Action{\r\n type = MessageActionTypes.SendingSignalFailed;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\nexport class ReceiveSignalTriggered implements Action{\r\n type = MessageActionTypes.ReceiveSignalTriggered;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public errorMessage :string;\r\n constructor(public messageTypingDetails:MessageTypingDetails) { };\r\n}\r\nexport class ReceiveSignalCompleted implements Action{\r\n type = MessageActionTypes.ReceiveSignalCompleted;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public errorMessage : string;\r\n constructor(public messageTypingDetails:MessageTypingDetails) { };\r\n}\r\nexport class ReceiveSignalFailed implements Action{\r\n type = MessageActionTypes.ReceiveMessageFailed;\r\n public messageCount: number;\r\n public messageDetails: MessageDetails;\r\n public employeeStatusModel: EmployeeStatusModel;\r\n public initialStatusOfUsers: InitialStatusOfUsers;\r\n public gotColleagues: boolean;\r\n public channelUpdateModel: ChannelUpdateModel;\r\n \r\n public messageTypingDetails:MessageTypingDetails;\r\n constructor(public errorMessage: string) { };\r\n}\r\nexport type ChatWebActions = MessageTriggered |\r\n MessageCompleted |\r\n MessageFailed |\r\n PresenceEventTriggered |\r\n PresenceEventCompleted |\r\n PresenceEventFailed |\r\n CountTriggered |\r\n CountCompleted |\r\n CountFailed |\r\n InitalStateOfUsersCompleted |\r\n InitalStateOfUsersFailed |\r\n InitalStateOfUsersTriggered |\r\n ReceiveMessageCompleted |\r\n ReceiveMessageFailed |\r\n ReceiveMessageTriggered |\r\n RequestingStateOfUsersTriggered |\r\n RequestingStateOfUsersCompleted |\r\n RequestingStateOfUsersFailed |\r\n SendChannelUpdateModelCompleted|\r\n SendChannelUpdateModelFailed|\r\n SendChannelUpdateModelTriggered |\r\n ReceiveChannelUpdateModelCompleted |\r\n ReceiveChannelUpdateModelFailed |\r\n ReceiveChannelUpdateModelTriggered |\r\n SendingSignalCompleted|\r\n SendingSignalFailed|\r\n SendingSignalTriggered|\r\n ReceiveSignalTriggered|\r\n ReceiveSignalCompleted|\r\n ReceiveSignalFailed\r\n\r\n","import {\r\n MessageActionTypes,\r\n ChatWebActions\r\n} from \"../actions/chat.actions\"\r\nimport { MessageDetails } from \"../../models/MessageDetails\";\r\nimport { EmployeeStatusModel } from \"../../models/EmployeeStatusModel\";\r\nimport { InitialStatusOfUsers } from \"../../models/initialStatusofUsers\";\r\nimport { ChannelUpdateModel } from \"../../models/ChannelUpdateModel\"\r\nimport { MessageTypingDetails } from '../../models/MessageTypingDetails'\r\n\r\nexport interface State {\r\n error: string;\r\n messageDetails: MessageDetails;\r\n employeeStatusModel: EmployeeStatusModel;\r\n messageCount: number;\r\n initialStateOfUsers: InitialStatusOfUsers;\r\n gotColleagues: boolean;\r\n channelUpdateModel: ChannelUpdateModel;\r\n messageTypingDetails:MessageTypingDetails;\r\n}\r\n\r\n\r\nexport function reducer(state: State, action: ChatWebActions): State {\r\n switch (action.type) {\r\n case MessageActionTypes.MessageTriggered:\r\n return {\r\n ...state,\r\n messageDetails: (action as ChatWebActions).messageDetails\r\n };\r\n case MessageActionTypes.MessageCompleted:\r\n return {\r\n ...state,\r\n messageDetails: (action as ChatWebActions).messageDetails\r\n };\r\n\r\n case MessageActionTypes.MessageFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n };\r\n case MessageActionTypes.ReceiveMessageTriggered:\r\n return {\r\n ...state,\r\n messageDetails: (action as ChatWebActions).messageDetails\r\n };\r\n case MessageActionTypes.ReceiveMessageCompleted:\r\n return {\r\n ...state,\r\n messageDetails: (action as ChatWebActions).messageDetails\r\n };\r\n\r\n case MessageActionTypes.ReceiveMessageFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n };\r\n case MessageActionTypes.PresenceEventTriggered:\r\n return {\r\n ...state,\r\n employeeStatusModel: (action as ChatWebActions).employeeStatusModel\r\n };\r\n case MessageActionTypes.PresenceEventCompleted:\r\n return {\r\n ...state,\r\n employeeStatusModel: (action as ChatWebActions).employeeStatusModel\r\n };\r\n case MessageActionTypes.PresenceEventFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n };\r\n case MessageActionTypes.CountTriggered:\r\n return {\r\n ...state,\r\n messageCount: (action as ChatWebActions).messageCount\r\n };\r\n case MessageActionTypes.CountCompleted:\r\n return {\r\n ...state,\r\n messageCount: (action as ChatWebActions).messageCount\r\n };\r\n\r\n case MessageActionTypes.CountFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n };\r\n case MessageActionTypes.InitalStateOfUsersTriggered:\r\n return {\r\n ...state,\r\n initialStateOfUsers: (action as ChatWebActions).initialStatusOfUsers\r\n }\r\n case MessageActionTypes.InitalStateOfUsersCompleted:\r\n return {\r\n ...state,\r\n initialStateOfUsers: (action as ChatWebActions).initialStatusOfUsers\r\n }\r\n case MessageActionTypes.InitalStateOfUsersFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n }\r\n case MessageActionTypes.RequestingStateOfUsersTriggered:\r\n return {\r\n ...state,\r\n gotColleagues: (action as ChatWebActions).gotColleagues\r\n }\r\n case MessageActionTypes.RequestingStateOfUsersCompleted:\r\n return {\r\n ...state,\r\n gotColleagues: (action as ChatWebActions).gotColleagues\r\n }\r\n case MessageActionTypes.RequestingStateOfUsersFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n }\r\n \r\n case MessageActionTypes.SendChannelUpdateModelTriggered:\r\n return {\r\n ...state,\r\n channelUpdateModel: (action as ChatWebActions).channelUpdateModel\r\n }\r\n case MessageActionTypes.SendChannelUpdateModelCompleted:\r\n return {\r\n ...state,\r\n channelUpdateModel: (action as ChatWebActions).channelUpdateModel\r\n }\r\n case MessageActionTypes.SendChannelUpdateModelFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n }\r\n case MessageActionTypes.ReceiveChannelUpdateModelTriggered:\r\n return {\r\n ...state,\r\n channelUpdateModel: (action as ChatWebActions).channelUpdateModel\r\n }\r\n case MessageActionTypes.ReceiveChannelUpdateModelCompleted:\r\n return {\r\n ...state,\r\n channelUpdateModel: (action as ChatWebActions).channelUpdateModel\r\n }\r\n case MessageActionTypes.ReceiveChannelUpdateModelFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n }\r\n case MessageActionTypes.SendingSignalTriggered:\r\n return {\r\n ...state,\r\n messageTypingDetails: (action as ChatWebActions).messageTypingDetails\r\n }\r\n case MessageActionTypes.SendingSignalCompleted:\r\n return {\r\n ...state,\r\n messageTypingDetails: (action as ChatWebActions).messageTypingDetails\r\n }\r\n case MessageActionTypes.SendingSignalFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n }\r\n case MessageActionTypes.ReceiveSignalTriggered:\r\n return {\r\n ...state,\r\n messageTypingDetails: (action as ChatWebActions).messageTypingDetails\r\n }\r\n case MessageActionTypes.ReceiveSignalCompleted:\r\n return {\r\n ...state,\r\n messageTypingDetails: (action as ChatWebActions).messageTypingDetails\r\n }\r\n case MessageActionTypes.ReceiveSignalFailed:\r\n return {\r\n ...state,\r\n error: (action as ChatWebActions).errorMessage\r\n }\r\n default:\r\n return state;\r\n }\r\n}","import { ActionReducerMap, createFeatureSelector, createSelector, MemoizedSelector } from \"@ngrx/store\";\r\nimport { MemoizedSelectorWithProps } from '@ngrx/store/src/selector';\r\nimport { Dictionary } from '@ngrx/entity';\r\n\r\nimport { UserModel } from '../../models/user';\r\nimport { ThemeModel } from '../../models/themes.model';\r\nimport { IMenuItem } from '../../models/IMenuItem';\r\nimport { NotificationOutputModel } from '../../models/NotificationsOutPutModel';\r\n\r\nimport * as _ from \"underscore\";\r\n\r\nimport * as fromRoot from \"../../../../store/reducers/index\";\r\n\r\nimport * as fromAuthentication from \"./authentication.reducers\";\r\nimport * as fromMenuItems from \"./menuitems.reducers\";\r\nimport { EntityRoleFeatureModel } from '../../models/entityRoleFeature';\r\nimport { TimesheetDisableorEnable } from '../../models/timesheetenabledisable';\r\nimport * as fromNotifications from \"./notifications.reducers\";\r\nimport * as fromNotificationValidator from \"./notification-validator.reducers\";\r\nimport * as fromChatMessenger from \"./chat.reducers\";\r\n// import * as fromTags from \"./tags.reducers\";\r\n\r\n// tslint:disable-next-line: interface-name\r\nexport interface SharedModuleState {\r\n notifications: fromNotifications.State;\r\n authenticationRecord: fromAuthentication.State;\r\n menuItems: fromMenuItems.State;\r\n notificationValidator: fromNotificationValidator.State;\r\n chatMessenger: fromChatMessenger.State;\r\n // tags: fromTags.State;\r\n}\r\n\r\n// tslint:disable-next-line: interface-name\r\nexport interface State extends fromRoot.State {\r\n sharedManagement: SharedModuleState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap<SharedModuleState> = {\r\n notifications: fromNotifications.reducer,\r\n authenticationRecord: fromAuthentication.reducer,\r\n menuItems: fromMenuItems.reducer,\r\n notificationValidator: fromNotificationValidator.reducer,\r\n chatMessenger: fromChatMessenger.reducer\r\n // tags: fromTags.reducer\r\n};\r\n\r\nexport const getSharedState = createFeatureSelector<State, SharedModuleState>(\"sharedManagement\");\r\n\r\n// Authentication Selectors\r\nexport const getAuthenticationState = createSelector(\r\n getSharedState,\r\n (state) => state.authenticationRecord\r\n);\r\n\r\nexport const getTimeShettButtonDetails = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.TimeSheetRestrictedData\r\n)\r\n\r\nexport const isTimeSheetFetching = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.isTimeSheetFetching\r\n)\r\n\r\nexport const getIsStartEnabled = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.isStartEnabled\r\n);\r\n\r\nexport const getIfUserIsAuthenticated = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.userLoggedIn\r\n);\r\n\r\nexport const getIfUserIsLoggingIn = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.userLoggingIn\r\n);\r\n\r\nexport const getAuthenticatedUserRecord = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord\r\n);\r\n\r\nexport const getAuthenticatedUserModel = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.userModel\r\n);\r\n\r\nexport const getErrorWhileUserIsLoggingIn = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.errorWhileLoggingIn\r\n);\r\n\r\nexport const getAllRoleFeatures = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.roleFeatures\r\n);\r\n\r\nexport const getAllEntityTypeRoleFeatures = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.entityTypeRoleFeatures\r\n);\r\n\r\nexport const getAllRoleFeaturesByUserId = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.rolePermissionsList\r\n);\r\n\r\nexport const getDemoRecordsDataDeletion = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.deletingDemoData\r\n);\r\n\r\n\r\nexport const getThemeModel = createSelector(\r\n getAuthenticationState,\r\n authenticationRecord => authenticationRecord.themeModel\r\n);\r\n\r\n\r\nexport const getCompanySettings = createSelector(\r\n getAuthenticationState,\r\n authenticationRecord => authenticationRecord.companySettingsModel\r\n);\r\n\r\nexport const getEntityRolePermissionsByProjectId = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord, props) => {\r\n return (\r\n // tslint:disable-next-line: only-arrow-functions\r\n authenticationRecord.rolePermissionsList.filter(function (\r\n roleFeatureModel: EntityRoleFeatureModel\r\n ) {\r\n return (\r\n roleFeatureModel.projectId.toString().toLowerCase() ===\r\n props.projectId.toString().toLowerCase()\r\n );\r\n })\r\n );\r\n }\r\n);\r\n\r\nexport const getUserStoreId = createSelector(\r\n getAuthenticationState,\r\n authenticationRecord => authenticationRecord.userStoreId\r\n);\r\n\r\n// Role Feature Selectors\r\nexport const doesUserHavePermission = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord, props) => {\r\n return (\r\n // tslint:disable-next-line: only-arrow-functions\r\n authenticationRecord.roleFeatures.filter(function (\r\n roleFeatureModel: any\r\n ) {\r\n return (\r\n roleFeatureModel.featureId.toString().toLowerCase() ===\r\n props.featureId.toString().toLowerCase()\r\n );\r\n }).length > 0\r\n );\r\n }\r\n);\r\n\r\nexport const getRoleFeaturesLoading = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.loadingRoleFeatures\r\n);\r\n\r\n// Entity Role Feature Selectors\r\nexport const doesUserHavePermissionForEntityTypeFeature = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord, props) => {\r\n return (\r\n // tslint:disable-next-line: only-arrow-functions\r\n authenticationRecord.entityTypeRoleFeatures.filter(function (\r\n roleFeatureModel: EntityRoleFeatureModel\r\n ) {\r\n return (\r\n roleFeatureModel.entityFeatureId.toString().toLowerCase() ===\r\n props.entityFeatureId.toString().toLowerCase()\r\n );\r\n }).length > 0\r\n );\r\n }\r\n);\r\n\r\nexport const getEntityFeaturesLoading = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.loadingEntityFeatures\r\n);\r\n\r\n\r\nexport const getUserEntityFeaturesLoading = createSelector(\r\n getAuthenticationState,\r\n (authenticationRecord) => authenticationRecord.loadingUserEntityFeatures\r\n);\r\n\r\n// Menu Items Selectors\r\nexport const getMenuItemsState = createSelector(\r\n getSharedState,\r\n (state) => state.menuItems\r\n);\r\n\r\nexport const {\r\n selectIds: getMenuItemsIds,\r\n selectEntities: getMenuItemsEntities,\r\n selectAll: getMenuItemsAll,\r\n selectTotal: getMenuItemsTotal\r\n} = fromMenuItems.menuItemsAdapter.getSelectors(getMenuItemsState);\r\n\r\nexport const getMenuItemsLoading = createSelector(\r\n getMenuItemsState,\r\n (state) => state.menuItemsLoading\r\n);\r\n\r\nexport const getMenuCategory = createSelector(\r\n getMenuItemsState,\r\n (state) => state.menuCategory\r\n);\r\n\r\nexport const getCurrentActiveMenuCategoryMenuItems = createSelector(\r\n getMenuItemsAll,\r\n getMenuCategory,\r\n (menuItems, menuCategory) =>\r\n // tslint:disable-next-line: only-arrow-functions\r\n menuItems.filter(function (x) {\r\n return (\r\n x.menuCategory &&\r\n menuCategory &&\r\n x.menuCategory.toLowerCase() === menuCategory.toLowerCase()\r\n );\r\n })\r\n);\r\n\r\n// Notifications Selectors\r\nexport const getNotificationsState = createSelector(\r\n getSharedState,\r\n (state) => state.notifications\r\n);\r\n\r\nexport const {\r\n selectIds: getNotificationIds,\r\n selectEntities: getNotificationEntities,\r\n selectAll: getNotificationAll,\r\n selectTotal: getNotificationTotal\r\n} = fromNotifications.notificationsAdapter.getSelectors(getNotificationsState);\r\n\r\nexport const getNotificationUnreadTotal = createSelector(\r\n getNotificationAll,\r\n (entities) => entities.filter((notification) => !notification.isRead).length\r\n);\r\n\r\nexport const getNotificationsLoading = createSelector(\r\n getSharedState,\r\n (state) => state.notifications.loadingNotifications\r\n);\r\n\r\nexport const getChatMessengerState = createSelector(\r\n getSharedState,\r\n (state) => state.chatMessenger\r\n);","export class CompanysettingsModel{\r\n companySettingsId: string;\r\n companysettingsName: string\r\n isArchived: boolean;\r\n timeStamp: any;\r\n key:any;\r\n description:String;\r\n value:string;\r\n isSystemApp: boolean;\r\n vAT: string;\r\n PrimaryAddress: string;\r\n companyName: string;\r\n companyId: string;\r\n}\r\n\r\nexport class ModuleDetailsModel{\r\n moduleId: string;\r\n moduleIds: any;\r\n isActive: boolean;\r\n moduleName: string\r\n isArchived: boolean;\r\n timeStamp: any;\r\n}\r\n\r\nexport class CompanyModel{\r\n isArchived: boolean;\r\n timeStamp: any;\r\n vAT: string;\r\n primaryAddress: string;\r\n companyName: string;\r\n companyId: string;\r\n key:string;\r\n}","export const ApiUrls = {\r\n GET_COMPANY_START_FUNCTIONALITY_ENABLED: `MasterData/MasterDataManagementApi/GetCompanyWorkItemStartFunctionalityRequired`,\r\n GetWebAppUsageTime: `ActivityTracker/ActivityTrackerApi/GetWebAppUsageTime`,\r\n GetTrackedInformationOfUserStory: `ActivityTracker/ActivityTrackerApi/GetTrackedInformationOfUserStory`,\r\n GetTotalTimeUsageOfApplicationsByUsers: `ActivityTracker/ActivityTrackerApi/GetTotalTimeUsageOfApplicationsByUsers`,\r\n GetTimeUsageDrillDown: `ActivityTracker/ActivityTrackerApi/GetTimeUsageDrillDown`,\r\n GetEmployees: `ActivityTracker/ActivityTrackerApi/GetEmployees`,\r\n GetAllAssignees: `Assets/AssetApi/GetAllAssignees`,\r\n GetEncashmentTypes: `MasterData/MasterDataManagementApi/GetEncashmentTypes`,\r\n GetBoardTypeById: `BoardTypes/BoardTypesApi/GetBoardTypeById`,\r\n GetMaritalStatuses: `MasterData/MasterDataManagementApi/GetMaritalStatuses`,\r\n GetTimeZoneById: `TimeZone/TimeZoneApi/GetTimeZoneById`,\r\n SearchCanteenPurchases: `Canteen/CanteenManagementApi/SearchCanteenPurchases`,\r\n UpsertProjectAndChannelMember: `Projects/ProjectMembersApi/UpsertProjectAndChannelMember`,\r\n GetAllTimeZones: `TimeZone/TimeZoneApi/GetAllTimeZones`,\r\n GetProjectTypeById: `Projects/ProjectTypesApi/GetProjectTypeById`,\r\n GetMasterLeaveTypes: `MasterData/MasterDataManagementApi/GetMasterLeaveTypes`,\r\n GetLeaveDetails: 'MasterData/MasterDataManagementApi/GetLeaveDetails',\r\n GetEmployeeWorkingDays: `HrDashboard/HrDashboardApi/GetEmployeeWorkingDays`,\r\n UpsertBranch: `Branch/BranchApi/UpsertBranch`,\r\n UpsertNumberFormat: `MasterData/MasterDataManagementApi/UpsertNumberFormat`,\r\n GetTestRailReports: `TestRail/ReportApi/GetTestRailReports`,\r\n GetEnableorDisableTimesheetButtons: `Timesheet/TimesheetApi/GetEnableorDisableTimesheetButtons`,\r\n GetGoalBurnDownChart: `Goals/GoalsApi/GetGoalBurnDownChart`,\r\n DownloadFile: `FileStore/FileStoreApi/DownloadFile`,\r\n UploadTestCasesFromCsv: `TestRail/TestSuiteApi/UploadTestCasesFromCsv`,\r\n GetFeedbackTypes: `MasterData/UpsertFeedbackTypeApi/GetFeedbackTypes`,\r\n DeleteTestSuite: `TestRail/TestSuiteApi/DeleteTestSuite`,\r\n GetMyEmployeeId: `HrManagement/HrManagementApi/GetMyEmployeeId`,\r\n GetEmployeeReportToMembers: `HrManagement/HrManagementApi/GetEmployeeReportToMembers`,\r\n GetProjectById: `Projects/ProjectsApi/GetProjectById`,\r\n ArchiveProject: `Projects/ProjectsApi/ArchiveProject`,\r\n GetAllUsers: `User/UsersApi/GetAllUsers`,\r\n SearchEmployeeEducationDetails: `HrManagement/HrManagementApi/SearchEmployeeEducationDetails`,\r\n UploadProfileImage: `User/UsersApi/UploadProfileImage`,\r\n UpsertCompanyLogo: `MasterData/MasterDataManagementApi/UpsertCompanyLogo`,\r\n UpsertEmployeeBankDetails: `HrManagement/HrManagementApi/UpsertEmployeeBankDetails`,\r\n UpsertPayFrequency: `MasterData/MasterDataManagementApi/UpsertPayFrequency`,\r\n UpsertLanguage: `MasterData/MasterDataManagementApi/UpsertLanguage`,\r\n GetAllGoalReplanTypes: `Goals/GoalReplanTypeApi/GetAllGoalReplanTypes`,\r\n AmendUserStoriesDeadline: `UserStory/UserStoryApi/AmendUserStoriesDeadline`,\r\n UpsertNationality: `MasterData/MasterDataManagementApi/UpsertNationality`,\r\n GetTestSuiteSubSectionById: `TestRail/TestSuiteApi/GetTestSuiteSubSectionById`,\r\n GetAllApplicableMenuItems: `Features/FeaturesApi/GetAllApplicableMenuItems`,\r\n GetNotifications: `Notification/NotificationApi/GetNotifications`,\r\n UpsertNotificationReadStatus: `Notification/NotificationApi/UpsertUserNotificationRead`,\r\n SearchRateType: `HrManagement/HrManagementApi/SearchRateType`,\r\n GetDeveloperBurnDownChart: `Goals/GoalsApi/GetDeveloperBurnDownChart`,\r\n GetUserStoryById: `UserStory/UserStoryApi/GetUserStoryById`,\r\n UpsertEmployeeEducationDetails: `HrManagement/HrManagementApi/UpsertEmployeeEducationDetails`,\r\n GetCommentById: `Comments/CommentsApi/GetCommentById`,\r\n SearchEmployeeSkillDetails: `HrManagement/HrManagementApi/SearchEmployeeSkillDetails`,\r\n GetChannelMembers: `api/ChatApi/GetChannelMembers`,\r\n GetWorkById: `Work/WorkApi/GetWorkById`,\r\n GetLeaveTypeById: `LeaveType/LeaveTypeApi/GetLeaveTypeById`,\r\n GetDeveloperGoalHeatMap: `Goals/GoalsApi/GetDeveloperGoalHeatMap`,\r\n GetDeveloperSpentTimeReportOnGoal: `Goals/GoalsApi/GetDeveloperSpentTimeReport`,\r\n GetAllPermittedEntityRoleFeatures: `EntityType/EntityRoleFeatureApi/GetAllPermittedEntityRoleFeatures`,\r\n GetButtonTypeById: `ButtonType/ButtonTypeApi/GetButtonTypeById`,\r\n LoginUserForMobile: `api/LoginApi/LoginUserForMoble`,\r\n GetGoalById: `Goals/GoalsApi/GetGoalById`,\r\n GetAllNationalities: `MasterData/MasterDataManagementApi/GetAllNationalities`,\r\n UpsertMultipleUserStories: `UserStory/UserStoryApi/UpsertMultipleUserStories`,\r\n UpsertState: `MasterData/MasterDataManagementApi/UpsertState`,\r\n UpsertEmployeeAbsence: `Leaves/LeavesManagementApi/UpsertEmployeeAbsence`,\r\n GetLanguageFluencies: `MasterData/MasterDataManagementApi/GetLanguageFluencies`,\r\n GetSuppliersDropDown: `Suppliers/SupplierApi/GetSuppliersDropDown`,\r\n GetUserStorySubTypeById: ` UserStory/UserStorySubTypeApi/GetUserStorySubTypeById`,\r\n GetAllLeaveTypes: `LeaveType/LeaveTypeApi/GetAllLeaveTypes`,\r\n UpsertEntityRoleFeature: `EntityType/EntityRoleFeatureApi/UpsertEntityRoleFeature`,\r\n SearchUserStories: `UserStory/UserStoryApi/SearchUserStories`,\r\n GetEmployeeUserStories: `ProductivityDashboard/ProductivityDashboardApi/GetEmployeeUserStories`,\r\n UpsertDateFormat: `MasterData/MasterDataManagementApi/UpsertDateFormat`,\r\n UpsertSkills: `MasterData/MasterDataManagementApi/UpsertSkills`,\r\n GetDesignations: `HrManagement/HrManagementApi/GetDesignations`,\r\n UpsertBreakType: `HrManagement/HrManagementApi/UpsertBreakType`,\r\n UpsertCompanysettings: `MasterData/MasterDataManagementApi/UpsertCompanysettings`,\r\n GetEmployeeDetails: `HrManagement/HrManagementApi/GetEmployeeDetails`,\r\n UpsertTestPlan: `TestRail/TestRunApi/UpsertTestPlan`,\r\n UpsertEmploymentStatus: `MasterData/MasterDataManagementApi/UpsertEmploymentStatus`,\r\n UpsertEmployeeReportTo: `HrManagement/HrManagementApi/UpsertEmployeeReportTo`,\r\n GetTestCasesByFilters: `TestRail/TestSuiteApi/GetTestCasesByFilters`,\r\n SearchCompanies: `CompanyStructure/CompanyStructureApi/SearchCompanies`,\r\n GetAllWorkFlowStatus: `WorkFlow/WorkFlowStatusApi/GetAllWorkFlowStatus`,\r\n GetWidgets: `Widgets/WidgetsApi/GetWidgets`,\r\n UpsertLeaveFrequency: `MasterData/MasterDataManagementApi/UpsertLeaveFrequency`,\r\n UpsertExpenseCategory: `Expense/ExpenseApi/UpsertExpenseCategory`,\r\n UpsertBugPriority: `Status/BugPriorityApi/UpsertBugPriority`,\r\n UpsertCustomApplicationKeys: `CustomAppplication/CustomApplicationApi/UpsertCustomApplicationKeys`,\r\n SearchPermissionRegister: `TimeSheet/TimeSheetApi/SearchPermissionRegister`,\r\n GetLoggedInUser: `api/LoginApi/GetLoggedInUser`,\r\n UpsertUserStoryReviewComment: `UserStory/UserStoryReviewCommentApi/UpsertUserStoryReviewComment`,\r\n GetMonthlyFoodOrderReport: `FoodOrders/FoodOrderManagementApi/GetMonthlyFoodOrderReport`,\r\n UpsertProcessDashboardStatus: `Dashboard/ProcessDashboardStatusApi/UpsertProcessDashboardStatus`,\r\n SearchMainUseCases: `CompanyStructure/CompanyStructureApi/SearchMainUseCases`,\r\n UpsertUserStoryReplanType: `Status/BugPriorityApi/UpsertUserStoryReplanType`,\r\n UpsertTimeSheet: `Timesheet/TimeSheetApi/UpsertTimeSheet`,\r\n GetUserStoriesByGoals: `UserStory/UserStoryApi/GetUserStoriesByGoals`,\r\n GetSeatingArrangementById: `Assets/AssetApi/GetSeatingArrangementById`,\r\n SearchEmployeeReportToDetails: `HrManagement/HrManagementApi/SearchEmployeeReportToDetails`,\r\n GetTestCasePriorityMasterDataById: `TestRail/TestSuiteApi/GetTestCasePriorityMasterDataById`,\r\n UpsertContractType: `HrManagement/HrManagementApi/UpsertContractType`,\r\n SearchSeatingArrangement: `Assets/AssetApi/SearchSeatingArrangement`,\r\n GetLeaveFormula: `MasterData/MasterDataManagementApi/GetLeaveFormula`,\r\n GetAllGoalStatuses: `Status/GoalStatusApi/GetAllGoalStatuses`,\r\n InsertUserStoryReplan: `UserStory/UserStoryReplanApi/InsertUserStoryReplan`,\r\n GetTestSuiteCount: `TestRail/TestSuiteApi/GetTestSuiteCount`,\r\n GeBoardTypeById: `BoardTypes/BoardTypesApi/GeBoardTypeById`,\r\n GetGoalActivityWithUserStories: `Goals/GoalsApi/GetGoalActivityWithUserStories`,\r\n GetCompetencies: `MasterData/MasterDataManagementApi/GetCompetencies`,\r\n UpsertTotalOffLeave: `MasterData/MasterDataManagementApi/UpsertTotalOffLeave`,\r\n GetLateEmployeeCount: `HrDashboard/HrDashboardApi/GetLateEmployeeCount`,\r\n UpsertExpenseReport: `Expense/ExpenseApi/UpsertExpenseReport`,\r\n GetAllAssets: `Assets/AssetApi/GetAllAssets`,\r\n GetAccessibleIpAddresses: `MasterData/MasterDataManagementApi/GetAccessibleIpAddresses`,\r\n SearchTestSuiteSubSections: `TestRail/TestSuiteApi/SearchTestSuiteSubSections`,\r\n GetUserStoryReplanTypes: `Status/BugPriorityApi/GetUserStoryReplanTypes`,\r\n UpsertRelationship: `HrManagement/HrManagementApi/UpsertRelationship`,\r\n GetTestSuiteById: `TestRail/TestSuiteApi/GetTestSuiteByI`,\r\n DeleteProjectMember: `Projects/ProjectMembersApi/DeleteProjectMember`,\r\n UpsertMultipleFiles: `File/FileApi/UpsertMultipleFiles`,\r\n GetAllConfigurationTypes: `ConfigurationTypes/ConfigurationTypesApi/GetAllConfigurationTypes`,\r\n GetExpenseCategoryById: `Expense/ExpenseApi/GetExpenseCategoryById`,\r\n UpsertWorkFlowEligibleStatusTransition: `WorkFlow/WorkFlowEligibleStatusTransitionApi/UpsertWorkFlowEligibleStatusTransition`,\r\n UpsertWidget: `Widgets/WidgetsApi/UpsertWidget`,\r\n GetProductDetailsById: `Products/ProductsApi/GetProductDetailsByI`,\r\n GoalReplanHistory: `UserStory/UserStoryReplanApi/GoalReplanHistory`,\r\n GetUserGoalBurnDownChart: 'Goals/GoalsApi/GetUserGoalBurnDownChart',\r\n UpsertProjectTags: `Projects/ProjectsApi/UpsertProjectTags`,\r\n SearchEmployeeSalaryDetails: `HrManagement/HrManagementApi/SearchEmployeeSalaryDetails`,\r\n GetMerchantById: `Expense/ExpenseApi/GetMerchantById`,\r\n UpsertShiftTiming: `HrManagement/HrManagementApi/UpsertShiftTiming`,\r\n UpsertCompanyLocation: `CompanyLocation/CompanyLocationApi/UpsertCompanyLocation`,\r\n GetAllConsideredHours: `ConsideredHours/ConsideredHoursApi/GetAllConsideredHours`,\r\n UpsertCustomWidget: `Widgets/WidgetsApi/UpsertCustomWidget`,\r\n UpsertWorkFlow: `WorkFlow/WorkFlowApi/UpsertWorkFlow`,\r\n Login: `api/LoginApi/Login`,\r\n UpsertFile: `File/FileApi/UpsertFile`,\r\n GetActivelyRunningTeamLeadGoals: `Goals/GoalsApi/GetActivelyRunningTeamLeadGoals`,\r\n GetEmployeePresence: `HrDashboard/HrDashboardApi/GetEmployeePresence`,\r\n GetAllFoodOrders: `FoodOrders/FoodOrderManagementApi/GetAllFoodOrders`,\r\n UpsertBoardTypeApi: `BoardTypes/BoardTypeApi/UpsertBoardTypeApi`,\r\n UpsertConfigurationType: `ConfigurationTypes/ConfigurationTypesApi/UpsertConfigurationType`,\r\n GetStates: `MasterDataManagement/MasterDataManagementApi/GetStates`,\r\n UpsertCurrencyConversion: `HrManagement/HrManagementApi/UpsertCurrencyConversion`,\r\n GetCanteenCreditByUserId: `Canteen/CanteenManagementApi/GetCanteenCreditByUserId`,\r\n UpsertReferenceType: `MasterData/MasterDataManagementApi/UpsertReferenceType`,\r\n GetBugsBasedOnUserStories: `UserStory/UserStoryApi/GetBugsBasedOnUserStories`,\r\n GetLineManagers: `HrDashboard/HrDashboardApi/GetLineManagers`,\r\n UpsertWorkFlowStatus: `WorkFlow/WorkFlowStatusApi/UpsertWorkFlowStatus`,\r\n GetNationalities: `MasterData/MasterDataManagementApi/GetNationalities`,\r\n CreateNewChannel: `api/ChatApi/CreateNewChannel`,\r\n GetProjectOverViewDetails: `Projects/ProjectsApi/GetProjectOverViewDetails`,\r\n UpsertCustomApplication: `CustomAppplication/CustomApplicationApi/UpsertCustomApplication`,\r\n GetHumanTaskList: `api/CustomApplicationApi/GetHumanTaskList`,\r\n GenericFormSubmittedData: `GenericForm/GenericFormApi/GenericFormSubmittedData`,\r\n CompleteUserTask: `api/CustomApplicationApi/CompleteUserTask`,\r\n SearchUserStoryTags: `UserStory/UserStoryApi/SearchUserStoryTags`,\r\n ArchiveGoal: `Goals/GoalsApi/ArchiveGoal`,\r\n UpsertButtonType: `ButtonType/ButtonTypeApi/UpsertButtonType`,\r\n GetStatusReportingConfigurationForms: `StatusReporting/StatusReportingApi/GetStatusReportingConfigurationForms`,\r\n GetAdhocWorkByUserStoryId: `AdhocWork/AdhocWorkApi/GetAdhocWorkByUserStoryId`,\r\n GetRoleById: `Roles/RolesApi/GetRoleById`,\r\n GetTestCaseTypeMasterDataById: `TestRail/TestSuiteApi/GetTestCaseTypeMasterDataById`,\r\n GetContractTypes: `HrManagement/HrManagementApi/GetContractTypes`,\r\n GetActivelyRunningProjectGoals: `Goals/GoalsApi/GetActivelyRunningProjectGoals`,\r\n GetPayGradeRates: `HrManagement/HrManagementApi/GetPayGradeRates`,\r\n UpsertMilestone: `TestRail/MilestoneApi/UpsertMilestone`,\r\n GetCompanysettings: `MasterData/MasterDataManagementApi/GetCompanysettings`,\r\n UpsertTestSuite: `TestRail/TestSuiteApi/UpsertTestSuite`,\r\n InsertUserStoryLogTime: `UserStory/UserStoryApi/InsertUserStoryLogTime`,\r\n UpsertUserstoryLogTimeBasedOnPunchCard: `UserStory/UserStoryApi/UpsertUserstoryLogTimeBasedOnPunchCard`,\r\n GetTestCaseStatusMasterDataById: `TestRail/TestSuiteApi/GetTestCaseStatusMasterDataById`,\r\n GetTimeSheetPermissions: `Timesheet/TimeSheetApi/GetTimeSheetPermissions`,\r\n SearchCompanyLocation: `CompanyLocation/CompanyLocationApi/SearchCompanyLocation`,\r\n GetCompanyById: `CompanyStructure/CompanyStructureApi/GetCompanyById`,\r\n UpsertEmployeeShift: `HrManagement/HrManagementApi/UpsertEmployeeShift`,\r\n SearchIndustries: `CompanyStructure/CompanyStructureApi/SearchIndustries`,\r\n UpsertUserStoryScenario: `TestRail/TestRunApi/UpsertUserStoryScenario`,\r\n SearchGoals: `Goals/GoalsApi/SearchGoals`,\r\n GetProcessDashboardByProjectId: `Dashboard/ProcessDashboardApi/GetProcessDashboardByProjectId`,\r\n GetTestRailConfigurations: `TestRail/TestSuiteApi/GetTestRailConfigurations`,\r\n UpsertProjectAndChannel: `Projects/ProjectsApi/UpsertProjectAndChannel`,\r\n GetFoodOrderById: `FoodOrders/FoodOrderManagementApi/GetFoodOrderById`,\r\n SearchTestPlans: `TestRail/TestRunApi/SearchTestPlans`,\r\n UpsertUserPunchCard: `Timesheet/TimeSheetApi/UpsertUserPunchCard`,\r\n UpsertTestCaseAutomationType: `TestRail/TestSuiteApi/UpsertTestCaseAutomationType`,\r\n UpsertTestRailConfiguration: `TestRail/TestSuiteApi/UpsertTestRailConfiguration`,\r\n GetModulesList: `MasterData/MasterDataManagementApi/GetModulesList`,\r\n GetCompanyModulesList: `MasterData/MasterDataManagementApi/GetCompanyModulesList`,\r\n UpsertCompanyModule: `MasterData/MasterDataManagementApi/UpsertCompanyModule`,\r\n UploadTestRunsFromCsv: `TestRail/TestRunApi/UploadTestRunsFromCsv`,\r\n GetTimeFormatById: `CompanyStructure/CompanyStructureApi/GetTimeFormatById`,\r\n UpsertEmployeeMemberships: `HrManagement/HrManagementApi/UpsertEmployeeMemberships`,\r\n GetCompanyLocationById: `CompanyLocation/CompanyLocationApi/GetCompanyLocationById`,\r\n GetTestTeamStatusReporting: `TestRail/TestRunApi/GetTestTeamStatusReporting`,\r\n GetTestPlanReport: `TestRail/TestRunApi/GetTestPlanReport`,\r\n AddEmployeesToChannel: `api/ChatApi/AddEmployeesToChannel`,\r\n SearchEmployeeImmigrationDetails: `HrManagement/HrManagementApi/SearchEmployeeImmigrationDetails`,\r\n UpsertUserStoryReplan: `UserStory/UserStoryReplanApi/UpsertUserStoryReplan`,\r\n UpsertMerchant: `Expense/ExpenseApi/UpsertMerchant`,\r\n GetGoalsOverAllStatusByDashboardId: `Dashboard/ProcessDashboardApi/GetGoalsOverAllStatusByDashboardId`,\r\n IsUserAccessibleToFeature: `Access/AccessibilityApi/IsUserAccessibleToFeature`,\r\n UpsertLicenseType: `MasterData/MasterDataManagementApi/UpsertLicenseType`,\r\n ParkUserStory: `UserStory/UserStoryApi/ParkUserStory`,\r\n GetUserStoryScenarioHistory: `TestRail/TestRunApi/GetUserStoryScenarioHistory`,\r\n UpsertGenericFormType: `MasterData/GenericFormMasterDataApi/UpsertGenericFormType`,\r\n UpsertCustomFormSubmission: `MasterData/GenericFormMasterDataApi/UpsertCustomFormSubmission`,\r\n GetIntroducedByOptionById: `CompanyStructure/CompanyStructureApi/GetIntroducedByOptionById`,\r\n GetEmployeeYearlyProductivityReport: `Goals/GoalsApi/GetEmployeeYearlyProductivityReport`,\r\n UpsertProjectFeature: `Projects/ProjectFeaturesApi/UpsertProjectFeature`,\r\n SearchFoodItems: `Canteen/CanteenManagementApi/SearchFoodItems`,\r\n GetAllTestCaseAutomationTypes: `TestRail/TestSuiteApi/GetAllTestCaseAutomationTypes`,\r\n GetUserBreakDetails: 'Timesheet/TimeSheetApi/GetUserBreakDetails',\r\n UpsertBreakDetails: 'Timesheet/TimeSheetApi/UpsertUserBreakDetails',\r\n GetMyTimeSheetDetails: `Timesheet/TimeSheetApi/GetMyTimeSheetDetails`,\r\n UpsertLeaveSession: `LeaveSessions/LeaveSessionsApi/UpsertLeaveSession`,\r\n GetAllTestCaseTemplates: `TestRail/TestSuiteApi/GetAllTestCaseTemplates`,\r\n UpsertDesignation: `HrManagement/HrManagementApi/UpsertDesignation`,\r\n UpsertGenericForms: `GenericForm/GenericFormApi/UpsertGenericForms`,\r\n DeletePermission: `Leaves/LeavesManagementApi/DeletePermission`,\r\n DeleteTestRun: `TestRail/TestRunApi/DeleteTestRun`,\r\n GetAllPurchasedAssets: `Assets/AssetApi/GetAllPurchasedAssets`,\r\n UpsertFeedbackForm: `MasterData/UpsertFeedbackTypeApi/UpsertFeedbackForm`,\r\n SearchByProduct: `Products/ProductsApi/SearchByProduct`,\r\n GetContractTypeById: `HrManagement/HrManagementApi/GetContractTypeById`,\r\n UpsertRestrictionType: `MasterData/MasterDataManagementApi/UpsertRestrictionType`,\r\n UpsertGoalReplanType: `Goals/GoalReplanTypeApi/UpsertGoalReplanType`,\r\n SearchNumberFormats: `CompanyStructure/CompanyStructureApi/SearchNumberFormats`,\r\n GetPreviousUserStories: `UserStory/UserStoryApi/GetPreviousUserStories`,\r\n GetPersonalChatOrChannel: `Chatapi/ChatApi/GetPersonalChatOrChannelChat`,\r\n GetCompletedMilestoneCount: `TestRail/MilestoneApi/GetCompletedMilestoneCount`,\r\n UpsertCompany: `CompanyStructure/CompanyStructureApi/UpsertCompany`,\r\n UpsertCompanyDetails: `CompanyStructure/CompanyStructureApi/UpsertCompanyDetails`,\r\n CompanyDetails: `CompanyStructure/CompanyStructureApi/CompanyDetails`,\r\n GetFileDetailById: `File/FileApi/GetFileDetailById`,\r\n GetFolderDetailById : `File/FileApi/GetFolderDetailById`,\r\n UpsertConsideredHours: `ConsideredHours/ConsideredHoursApi/UpsertConsideredHours`,\r\n GetSkills: `MasterData/MasterDataManagementApi/GetSkills`,\r\n UpsertEmployeePersonalDetails: `HrManagement/HrManagementApi/UpsertEmployeePersonalDetails`,\r\n GetAllButtonTypes: `ButtonType/ButtonTypeApi/GetAllButtonTypes`,\r\n GetAllBoardTypeApi: `BoardTypes/BoardTypeApi/GetAllBoardTypeApi`,\r\n GetProductivityIndexForDevelopers: `ProductivityDashboard/ProductivityDashboardApi/GetProductivityIndexForDevelopers`,\r\n GetGenericFormTypes: `MasterData/GenericFormMasterDataApi/GetGenericFormTypes`,\r\n GetCustomFormSubmissions: `MasterData/GenericFormMasterDataApi/GetCustomFormSubmissions`,\r\n GetExpenseReportStatuses: `Expense/ExpenseApi/GetExpenseReportStatuses`,\r\n GetLeavesReport: `HrDashboard/HrDashboardApi/GetLeavesReport`,\r\n GetMilestoneDropdownList: `TestRail/MilestoneApi/GetMilestoneDropdownList`,\r\n GetEmployeeWorkLogReport: `MyWork/MyWorkApi/GetEmployeeWorkLogReport`,\r\n GetJobCategoryDetails: `MasterData/MasterDataManagementApi/GetJobCategoryDetails`,\r\n GetTestRunReport: `TestRail/TestRunApi/GetTestRunReport`,\r\n GetEmployeeAttendanceByDay: `HrDashboard/HrDashboardApi/GetEmployeeAttendanceByDay`,\r\n GetAllPermissions: `Permission/PermissionApi/GetAllPermissions`,\r\n GetAllConfigurationSettings: `ConfigurationTypes/ConfigurationSettingsApi/GetAllConfigurationSettings`,\r\n UpsertTestCaseStatusMasterValue: `TestRail/TestSuiteApi/UpsertTestCaseStatusMasterValue`,\r\n GetDateFormatById: `CompanyStructure/CompanyStructureApi/GetDateFormatById`,\r\n GetAllStatuses: `Status/StatusApi/GetAllStatuses`,\r\n GetStatusConfigurationOptions: `StatusReporting/StatusReportingApi/GetStatusReportingConfigurationOptions`,\r\n GetStatusById: `Status/StatusApi/GetStatusById`,\r\n SearchOnboardedGoals: `Dashboard/ProcessDashboardApi/SearchOnboardedGoals`,\r\n GetEnableOrDisableTimeSheetButtonDetails: `Timesheet/TimeSheetApi/GetEnableOrDisableTimeSheetButtonDetails`,\r\n UpsertTimeSheetPermissions: `Timesheet/TimeSheetApi/UpsertTimeSheetPermissions`,\r\n GetAllLogTimeOptions: `UserStory/UserStoryApi/GetAllLogTimeOptions`,\r\n GetCountries: `CompanyStructureManagement/CompanyStructureManagementApi/GetCountries`,\r\n GetUserStoriesOverview: `UserStory/UserStoryApi/GetUserStoriesOverview`,\r\n GetPayGrades: `HrManagement/HrManagementApi/GetPaygrades`,\r\n AddOrUpdateUserFcmToken: `api/ChatApi/AddOrUpdateUserFcmToken`,\r\n GetAllSuppliers: `Suppliers/SupplierApi/GetAllSuppliers`,\r\n GetWorkFlowEligibleStatusTransitionById: `WorkFlow/WorkFlowEligibleStatusTransitionApi/GetWorkFlowEligibleStatusTransitionById`,\r\n GetWorkAllocationByProjectId: `WorkAllocationManagement/WorkAllocationManagementApi/GetWorkAllocationByProjectId`,\r\n GetAllTransitionDeadlines: `TransitionDeadline/TransitionDeadlineApi/GetAllTransitionDeadlines`,\r\n SearchTestCasesByTestRunId: `TestRail/TestSuiteApi/SearchTestCasesByTestRunId`,\r\n DeleteCompanyModule: `CompanyStructure/CompanyStructureApi/DeleteCompanyModule`,\r\n GetTestCaseById: `TestRail/TestSuiteApi/GetTestCaseById`,\r\n GetConfigurationTypeById: `ConfigurationTypes/ConfigurationTypesApi/GetConfigurationTypeById`,\r\n GetLeaveApplicabilty: `MasterData/MasterDataManagementApi/GetLeaveApplicabilty`,\r\n GetBoardTypeApiById: `BoardTypes/BoardTypeApi/GetBoardTypeApiById`,\r\n SearchTestCaseDetailsById: `TestRail/TestSuiteApi/SearchTestCaseDetailsById`,\r\n ReorderUserStories: `UserStory/UserStoryApi/ReorderUserStories`,\r\n UpsertCanteenFoodItem: `Canteen/CanteenManagementApi/UpsertCanteenFoodItem`,\r\n GetSupplierById: `Suppliers/SupplierApi/GetSupplierByI`,\r\n CreateStatusReport: `StatusReporting/StatusReportingApi/CreateStatusReport`,\r\n SearchTestSuiteSections: `TestRail/TestSuiteApi/SearchTestSuiteSections`,\r\n UpsertAccessibleIpAddresses: `MasterData/AccessibleIpAddressApi/UpsertAccessibleIpAddresses`,\r\n SearchEmployeeLanguageDetails: `HrManagement/HrManagementApi/SearchEmployeeLanguageDetails`,\r\n GetExpenseReportStatusById: `Expense/ExpenseApi/GetExpenseReportStatusById`,\r\n SearchComments: `Comments/CommentsApi/SearchComments`,\r\n GetProductById: `Products/ProductsApi/GetProductById`,\r\n GetPaymentMethod: `HrManagement/HrManagementApi/GetPaymentMethod`,\r\n UpsertPermission: `Permission/PermissionApi/UpsertPermission`,\r\n UpsertExpenseReportStatus: `Expense/ExpenseApi/UpsertExpenseReportStatus`,\r\n ForgotPassword: `api/LoginApi/ForgotPassword`,\r\n GetUserChannels: `api/ChatApi/GetUserChannels`,\r\n SendResetPasswordLink: `api/LoginApi/SendResetPasswordLink`,\r\n GetTestCasesCountByProject: `TestRail/TestSuiteApi/GetTestCasesCountByProject`,\r\n GetMyTeamMembersList: `HrManagement/HrManagementApi/GetMyTeamMembersList`,\r\n GetAllProcessDashboardStatuses: `Dashboard/ProcessDashboardStatusApi/GetAllProcessDashboardStatuses`,\r\n AssignPayGradeRates: `HrManagement/HrManagementApi/AssignPayGradeRates`,\r\n SearchTestCases: `TestRail/TestSuiteApi/SearchTestCases`,\r\n UpsertAdhocWork: `AdhocWork/AdhocWorkApi/UpsertAdhocWork`,\r\n GetQaPerformance: `ProductivityDashboard/ProductivityDashboardApi/GetQaPerformance`,\r\n UpsertWorkspace: `Widgets/WidgetsApi/UpsertWorkspace`,\r\n GetCompanyStructure: `CompanyStructureManagement/CompanyStructureManagementApi/GetCompanyStructure`,\r\n UpsertRole: `Roles/RolesApi/UpsertRole`,\r\n ArchiveChannelMembers: `api/ChatApi/ArchiveChannelMembers`,\r\n GetDepartmentById: `HrManagement/HrManagementApi/GetDepartmentById`,\r\n GetLateEmployee: `HrDashboard/HrDashboardApi/GetLateEmployee`,\r\n ChangePassword: `User/UsersApi/ChangePassword`,\r\n UploadTestSuitesFromXml: `TestRail/TestSuiteApi/UploadTestSuitesFromXml`,\r\n GetDailyLogTimeReport: `HrDashboard/HrDashboardApi/GetDailyLogTimeReport`,\r\n UpsertHoliday: `MasterData/MasterDataManagementApi/UpsertHoliday`,\r\n UpsertFoodOrder: `FoodOrders/FoodOrderManagementApi/UpsertFoodOrder`,\r\n UpsertDepartment: `HrManagement/HrManagementApi/UpsertDepartment`,\r\n UpsertFeedbackType: `MasterData/UpsertFeedbackTypeApi/UpsertFeedbackForm`,\r\n UpdateTestRunResultForMultipleTestCases: `TestRail/TestRunApi/UpdateTestRunResultForMultipleTestCases`,\r\n GetTestTeamStatusReportingProjectWise: `TestRail/TestRunApi/GetTestTeamStatusReportingProjectWise`,\r\n UpsertStatus: `Status/StatusApi/UpsertStatus`,\r\n GetAllTaskStatuses: `Status/StatusApi/GetAllTaskStatuses`,\r\n SearchEmployeeEmergencyContactDetails: `HrManagement/HrManagementApi/SearchEmployeeEmergencyContactDetails`,\r\n ArchiveCompletedUserStories: `UserStory/UserStoryApi/ArchiveCompletedUserStories`,\r\n UpsertReport: `TestRail/ReportApi/UpsertTestRailReport`,\r\n InsertGoalReplan: `Goals/GoalsApi/InsertGoalReplan`,\r\n GetAllBranches: `Branch/BranchApi/GetAllBranches`,\r\n UpsertSupplier: `Suppliers/SupplierApi/UpsertSupplier`,\r\n UpsertEmployeeSalaryDetails: `HrManagement/HrManagementApi/UpsertEmployeeSalaryDetails`,\r\n PurchaseCanteenItem: `Canteen/CanteenManagementApi/PurchaseCanteenItem`,\r\n UpsertSubscriptionPaidByOption: `MasterData/MasterDataManagementApi/UpsertSubscriptionPaidByOption`,\r\n GetProjectFeatureById: `Projects/ProjectFeaturesApi/GetProjectFeatureById`,\r\n SearchCanteenCredit: `Canteen/CanteenManagementApi/SearchCanteenCredit`,\r\n UpsertUser: `User/UsersApi/UpsertUser`,\r\n GetAllProjectMembers: `Projects/ProjectMembersApi/GetAllProjectMembers`,\r\n UpsertProjectType: `Projects/ProjectTypesApi/UpsertProjectType`,\r\n UpsertRateType: `HrManagement/HrManagementApi/UpsertRateType`,\r\n GetGoalReplanTypeById: `Goals/GoalReplanTypeApi/GetGoalReplanTypeById`,\r\n ArchiveUserStory: `UserStory/UserStoryApi/ArchiveUserStory`,\r\n UpsertCurrency: `HrManagement/HrManagementApi/UpsertCurrency`,\r\n UpsertConfigurationSettings: `ConfigurationTypes/ConfigurationSettingsApi/UpsertConfigurationSettings`,\r\n GetPermissionsById: `Permission/PermissionApi/GetPermissionsById`,\r\n GetRecentChannelMessages: `api/ChatApi/GetRecentChannelMessages`,\r\n UpdateMultipleTestCases: `TestRail/TestSuiteApi/UpdateMultipleTestCases`,\r\n SearchUserStoryPriorities: `UserStory/UserStoryPriorityApi/SearchUserStoryPriorities`,\r\n GetRegions: `CompanyStructureManagement/CompanyStructureManagementApi/GetRegions`,\r\n GetUserStoryStatusReport: `Goals/GoalsApi/GetUserStoryStatusReport`,\r\n SearchGoalDetails: `Goals/GoalsApi/SearchGoalDetails`,\r\n GetProjectMemberById: `Projects/ProjectMembersApi/GetProjectMemberById`,\r\n UpsertCompanyIntroducedByOption: `MasterData/MasterDataManagementApi/UpsertCompanyIntroducedByOption`,\r\n UpsertEmployeeWorkExperience: `HrManagement/HrManagementApi/UpsertEmployeeWorkExperience`,\r\n GetAllTestCasePriorities: `TestRail/TestSuiteApi/GetAllTestCasePriorities`,\r\n UpsertGoalComments: `Goals/GoalsApi/UpsertGoalComments`,\r\n GetEducationLevelsDropDown: `MasterData/MasterDataManagementApi/GetEducationLevelsDropDown`,\r\n GetMainUseCaseById: `CompanyStructure/CompanyStructureApi/GetMainUseCaseById`,\r\n UpsertReportingMethod: `MasterData/MasterDataManagementApi/UpsertReportingMethod`,\r\n SearchIndustryModule: `CompanyStructure/CompanyStructureApi/SearchIndustryModule`,\r\n GetWorkspaces: `Widgets/WidgetsApi/GetWorkspaces`,\r\n ValidateUserLocation: `Timesheet/TimeSheetApi/ValidateUserLocation`,\r\n GetTimeSheetHistoryDetails: `Timesheet/TimeSheetApi/GetTimeSheetHistoryDetails`,\r\n GetAllUserPermittedFeatures: `Features/FeaturesApi/GetAllUserPermittedFeatures`,\r\n UpsertStatusReportingConfiguration: `StatusReporting/StatusReportingApi/UpsertStatusReportingConfiguration`,\r\n UpsertProject: `Projects/ProjectsApi/UpsertProject`,\r\n Authorize: `api/LoginApi/Authorise`,\r\n GetEveryDayTargetStatus: `ProductivityDashboard/ProductivityDashboardApi/GetEveryDayTargetStatus`,\r\n SearchEmployeeDependentContacts: `HRManagement/HRManagementApi/SearchEmployeeDependentContacts`,\r\n GetLeaveStatus: `MasterData/LeaveStatusApi/GetLeaveStatus`,\r\n GetUserCanteenPurchases: `Canteen/CanteenManagementApi/GetUserCanteenPurchases`,\r\n GetTestRailActivity: `TestRail/OverviewApi/GetTestRailActivity`,\r\n GetBugReport: `ProductivityDashboard/ProductivityDashboardApi/GetBugReport`,\r\n GetExpenseReportById: `Expense/ExpenseApi/GetExpenseReportById`,\r\n UpsertLeaveType: `LeaveType/LeaveTypeApi/UpsertLeaveType`,\r\n UpsertGenericFormSubmitted: `GenericForm/GenericFormApi/UpsertGenericFormSubmitted`,\r\n UpsertPublicGenericFormSubmitted: `GenericForm/GenericFormApi/UpsertPublicGenericFormSubmitted`,\r\n UpsertPaymentType: `MasterData/PaymentTypeApi/UpsertPaymentType`,\r\n SearchTestSuites: `TestRail/TestSuiteApi/SearchTestSuites`,\r\n UpsertTestSuiteSection: `TestRail/TestSuiteApi/UpsertTestSuiteSection`,\r\n SendMessagesToUserOrChannel: `api/ChatApi/SendMessagesToUserOrChannel`,\r\n GetStatusReportings: `StatusReporting/StatusReportingApi/GetStatusReportings`,\r\n GetFeedTimeHistory: `TimeSheet/TimeSheetApi/GetFeedTimeHistory`,\r\n SearchProjects: `Projects/ProjectsApi/SearchProjects`,\r\n GetProjects: `TestRail/TestSuiteApi/GetProjects`,\r\n GetWorkSpaceFilters: `Widgets/WidgetsApi/GetWorkspaceFilters`,\r\n UpsertGoal: `Goals/GoalsApi/UpsertGoal`,\r\n GetAllPermissionReasons: `Timesheet/TimeSheetApi/GetAllPermissionReasons`,\r\n GetAllSeatingArrangement: `Assets/AssetApi/GetAllSeatingArrangement`,\r\n UpsertEmployeeJob: `HrManagement/HrManagementApi/UpsertEmployeeJob`,\r\n GetCustomApplication: `CustomAppplication/CustomApplicationApi/GetCustomApplication`,\r\n GetFormHistory: `CustomAppplication/CustomApplicationApi/GetFormHistory`,\r\n GetPublicCustomApplicationById: `CustomAppplication/CustomApplicationApi/GetPublicCustomApplicationById`,\r\n UpsertMultipleTestCases: `TestRail/TestSuiteApi/UpsertMultipleTestCases`,\r\n UpsertTimeSheetPermissionReasons: `Timesheet/TimeSheetApi/UpsertTimeSheetPermissionReasons`,\r\n UpsertEmployee: `Employee/EmployeeApi/UpsertEmployee`,\r\n GetTimesheetHistoryDetails: `Timesheet/TimesheetApi/GetTimesheetHistoryDetails`,\r\n GetAllExpenseStatuses: `Expense/ExpenseApi/GetAllExpenseStatuses`,\r\n GetAllPermittedRoleFeatures: `Roles/RoleFeatureApi/GetAllPermittedRoleFeatures`,\r\n UpsertEntityRole: `EntityRole/EntityRoleApi/UpsertEntityRole`,\r\n UpsertDashboard: `Widgets/WidgetsApi/UpsertDashboard`,\r\n SearchUserStorySubTypes: `UserStory/UserStorySubTypeApi/SearchUserStorySubTypes`,\r\n UpsertTimeZone: `TimeZone/TimeZoneApi/UpsertTimeZone`,\r\n GetAssetsAllocatedToIndividual: `Assets/AssetApi/GetAssetsAllocatedToIndividual`,\r\n UpsertEmployeeLanguages: `HrManagement/HrManagementApi/UpsertEmployeeLanguages`,\r\n UpsertLeaveFormula: `MasterData/MasterDataManagementApi/UpsertLeaveFormula`,\r\n SendReportAsPdf: `TestRail/ReportApi/SendReportAsPdf`,\r\n GetAppsettings: `MasterData/MasterDataManagementApi/GetAppsettings`,\r\n GetWorkFlowEligibleStatusTransitions: `WorkFlow/WorkFlowEligibleStatusTransitionApi/GetWorkFlowEligibleStatusTransitions`,\r\n GetProcessDashboardStatusById: `Dashboard/ProcessDashboardStatusApi/GetProcessDashboardStatusById`,\r\n GetAllRolesDropDown: `Roles/RolesApi/GetAllRolesDropDown`,\r\n UpsertCountry: `CompanyStructureManagement/CompanyStructureManagementApi/UpsertCountry`,\r\n GetDeveloperSpentTimeReport: `Goals/GoalsApi/GetDeveloperSpentTimeReport`,\r\n UpsertExpenseStatus: `Expense/ExpenseApi/UpsertExpenseStatus`,\r\n GetTimeSheetDetails: `Timesheet/TimeSheetApi/GetTimeSheetDetails`,\r\n GetCurrencies: `HrManagement/HrManagementApi/GetCurrencies`,\r\n GetTestPlanById: `TestRail/TestRunApi/GetTestPlanById`,\r\n GetGenericFormsByTypeId: `GenericForm/GenericFormApi/GetGenericFormsByTypeId`,\r\n GetCurrentUserStories: `UserStory/UserStoryApi/GetCurrentUserStories`,\r\n GetAssetCommentsAndHistory: `Assets/AssetApi/GetAssetCommentsAndHistory`,\r\n GetAllUsersAssets: `Assets/AssetApi/GetAllUsersAssets`,\r\n GetGoalReplanHistory: `UserStory/UserStoryReplanApi/GetGoalReplanHistory`,\r\n GetLeavesById: `Leaves/LeavesManagementApi/GetLeavesById`,\r\n UpsertPayGrade: `HrManagement/HrManagementApi/UpsertPaygrade`,\r\n GetMilestoneReportById: `TestRail/MilestoneApi/GetMilestoneReportById`,\r\n SearchCanteenBalance: `Canteen/CanteenManagementApi/SearchCanteenBalance`,\r\n GetUserStoryScenarios: `TestRail/TestSuiteApi/GetUserStoryScenarios`,\r\n InsertMultipleUserStoriesUsingFile: `UserStory/UserStoryApi/InsertMultipleUserStoriesUsingFile`,\r\n GetExpenseStatusById: `Expense/ExpenseApi/GetExpenseStatusById`,\r\n GetAllProducts: `Products/ProductsApi/GetAllProducts`,\r\n DeleteLeave: `Leaves/LeavesManagementApi/DeleteLeave`,\r\n GetAllProjectTypes: `Projects/ProjectTypesApi/GetAllProjectTypes`,\r\n UpsertTestCasePriorityMasterValue: `TestRail/TestSuiteApi/UpsertTestCasePriorityMasterValue`,\r\n GetRecentFoodOrders: `FoodOrders/FoodOrderManagementApi/GetRecentFoodOrders`,\r\n UpsertJobCategories: `MasterData/MasterDataManagementApi/UpsertJobCategories`,\r\n SearchExpenseCategories: `Expense/ExpenseApi/SearchExpenseCategories`,\r\n CreateNewMessageType: `Chat/ChatApi/CreateNewMessageType`,\r\n UpsertMainUseCase: `MasterData/MasterDataManagementApi/UpsertMainUseCase`,\r\n GetAllBankDetails: `HrManagement/HrManagementApi/GetAllBankDetails`,\r\n SearchSupplier: `Suppliers/SupplierApi/SearchSupplier`,\r\n GetPayFrequency: `MasterData/MasterDataManagementApi/GetPayFrequency`,\r\n GetUsersForSlack: `User/UsersApi/GetAllUsersForSlackApp`,\r\n GetMonthlyLeavesReport: `MasterData/MasterDataManagementApi/GetMonthlyLeavesReport`,\r\n ResetPassword: `api/LoginApi/ResetPassword`,\r\n GetDamagedAssetsList: `Assets/AssetApi/GetDamagedAssetsList`,\r\n AddMultipleExpenses: `Expense/ExpenseApi/AddMultipleExpenses`,\r\n UpsertLeaveStatus: `MasterData/LeaveStatusApi/UpsertLeaveStatus`,\r\n UploadTestRunsFromXml: `TestRail/TestRunApi/UploadTestRunsFromXml`,\r\n GetLicenceTypes: `MasterDataManagement/MasterDataManagementApi/GetLicenceTypes`,\r\n GetProjectMemberDropdown: `TestRail/TestRunApi/GetProjectMemberDropdown`,\r\n GetStatusReportingConfigurations: `StatusReporting/StatusReportingApi/GetStatusReportingConfigurations`,\r\n GetCurrencyList: `Currency/CurrencyApi/GetCurrencyList`,\r\n GetEmployeeWorkAllocation: `WorkAllocationManagement/WorkAllocationManagementApi/GetEmployeeWorkAllocation`,\r\n GetDrillDownUserStorybyUserId: `WorkAllocationManagement/WorkAllocationManagementApi/GetWADrillDownUSDetails`,\r\n SearchDateFormats: `CompanyStructure/CompanyStructureApi/SearchDateFormats`,\r\n GetOpenTestRunCount: `TestRail/TestRunApi/GetOpenTestRunCount`,\r\n GetCompanyDetails: `api/ChatApi/GetCompanyDetails`,\r\n GetWidgetFilterQueryBuilder: `Widgets/WidgetsApi/GetWidgetFilterQueryBuilder`,\r\n UpsertGoalTags: `Goals/GoalsApi/UpsertGoalTags`,\r\n DeleteProjectFeature: `Projects/ProjectFeaturesApi/DeleteProjectFeature`,\r\n ImportFormDataFromExcel: `CustomAppplication/CustomApplicationApi/ImportFormDataFromExcel`,\r\n SearchFoodOrder: `FoodOrders/FoodOrderManagementApi/SearchFoodOrder`,\r\n GetSectionsAndSubSections: `TestRail/TestSuiteApi/GetSectionsAndSubSections`,\r\n UpsertMembership: `MasterData/MasterDataManagementApi/UpsertMembership`,\r\n SearchEmployeeLicenseDetails: `HrManagement/HrManagementApi/SearchEmployeeLicenseDetails`,\r\n SearchUserStoryDetails: `UserStory/UserStoryApi/SearchUserStoryDetails`,\r\n GetMyProjectsWork: `MyWork/MyWorkApi/GetMyProjectsWork`,\r\n GetEmployeeById: `Employee/EmployeeApi/GetEmployeeById`,\r\n LogOut: `api/LoginApi/LogOut`,\r\n GetProjectOverviewReport: `TestRail/OverviewApi/GetProjectOverviewReport`,\r\n SearchAssets: `Assets/AssetApi/SearchAssets`,\r\n UpsertProjectMember: `Projects/ProjectMembersApi/UpsertProjectMember`,\r\n UpsertWork: `Work/WorkApi/UpsertWork`,\r\n GetTestRunsAndTestPlans: `TestRail/TestRunApi/GetTestRunsAndTestPlans`,\r\n GetTestRailOverviewCountsByProjectId: `TestRail/TestSuiteApi/GetTestRailOverviewCountsByProjectId`,\r\n GetMyEmployeeDetails: `HrManagement/HrManagementApi/GetMyEmployeeDetails`,\r\n GetUserStoryHistory: `UserStory/UserStoryApi/GetUserStoryHistory`,\r\n SearchExpenseReports: `Expense/ExpenseApi/SearchExpenseReports`,\r\n SearchGoalTags: `Goals/GoalsApi/SearchGoalTags`,\r\n GetPaymentTypes: `MasterData/PaymentTypeApi/GetPaymentTypes`,\r\n GetGoalHeatmap: `Goals/GoalsApi/GetGoalHeatmap`,\r\n DeleteMilestone: `TestRail/MilestoneApi/DeleteMilestone`,\r\n GetSoftLabels: `SoftLabels/SoftLabelsApi/GetSoftLabels`,\r\n SearchLogTimeHistory: `UserStory/UserStoryApi/SearchLogTimeHistory`,\r\n GetMyWorkOverViewDetails: `MyWork/MyWorkApi/GetMyWorkOverViewDetails`,\r\n GetAllEntityRoleFeaturesByUserId: `EntityType/EntityRoleFeatureApi/GetAllEntityRoleFeaturesByUserId`,\r\n UpsertAppSetting: `MasterData/MasterDataManagementApi/UpsertAppSetting`,\r\n UpsertTestCase: `TestRail/TestSuiteApi/UpsertTestCase`,\r\n UpsertBoardType: `BoardTypes/BoardTypesApi/UpsertBoardType`,\r\n GetLeaveFrequency: `MasterData/MasterDataManagementApi/GetLeaveFrequencies`,\r\n GetCompletedTestRunCount: `TestRail/TestRunApi/GetCompletedTestRunCount`,\r\n GetAllLeaveSessions: `LeaveSessions/LeaveSessionsApi/GetAllLeaveSessions`,\r\n GetExpenseReportSummary: `Expense/ExpenseApi/GetExpenseReportSummary`,\r\n GetGenders: `MasterData/MasterDataManagementApi/GetGenders`,\r\n GetWidgetDynamicQueryResult: `Widgets/WidgetsApi/GetWidgetDynamicQueryResult`,\r\n GetNumberFormatById: `CompanyStructure/CompanyStructureApi/GetNumberFormatById`,\r\n GetReportingMethods: `MasterDataManagement/MasterDataManagementApi/GetReportingMethods`,\r\n UpsertTestRun: `TestRail/TestRunApi/UpsertTestRun`,\r\n UpsertUserStory: `UserStory/UserStoryApi/UpsertUserStory`,\r\n UpdateMultipleUserStories: `UserStory/UserStoryApi/UpdateMultipleUserStories`,\r\n GetAllProductDetails: `Products/ProductsApi/GetAllProductDetails`,\r\n UpsertEmployeeEmergencyContactDetails: `HrManagement/HrManagementApi/UpsertEmployeeEmergencyContactDetails`,\r\n SearchIntroducedByOptions: `CompanyStructure/CompanyStructureApi/SearchIntroducedByOptions`,\r\n DeleteTestSuiteSection: `TestRail/TestSuiteApi/DeleteTestSuiteSection`,\r\n GetGoalsToArchive: `Goals/GoalsApi/GetGoalsToArchive`,\r\n UpdateMultipleUserStoriesGoal: `UserStory/UserStoryApi/UpdateMultipleUserStoriesGoal`,\r\n UploadFile: `File/FileApi/UploadFile`,\r\n UpsertAsset: `Assets/AssetApi/UpsertAsset`,\r\n UpsertProductDetails: `Products/ProductsApi/UpsertProductDetails`,\r\n ArchiveChannel: `api/ChatApi/ArchiveChannel`,\r\n UpsertEducationLevel: `MasterData/MasterDataManagementApi/UpsertEducationLevel`,\r\n UpsertLeaveApplicabilty: `MasterData/MasterDataManagementApi/UpsertLeaveApplicabilty`,\r\n GetExpenseById: `Expense/ExpenseApi/GetExpenseById`,\r\n SearchEmployeeMembershipDetails: `HrManagement/HrManagementApi/SearchEmployeeMembershipDetails`,\r\n UpsertEmploymentContract: `HrManagement/HrManagementApi/UpsertEmploymentContract`,\r\n GetUserHistoricalWorkReport: `MyWork/MyWorkApi/GetUserHistoricalWorkReport`,\r\n SearchProjectTags: `Projects/ProjectsApi/SearchProjectTags`,\r\n GetTransitionDeadlineById: `TransitionDeadline/TransitionDeadlineApi/GetTransitionDeadlineById`,\r\n InsertTestCaseHistory: `TestRail/TestRunApi/InsertTestCaseHistory`,\r\n UpsertUserStoryTags: `UserStory/UserStoryApi/UpsertUserStoryTags`,\r\n DeleteTestCase: `TestRail/TestSuiteApi/DeleteTestCase`,\r\n UpsertLeaves: `Leaves/LeavesManagementApi/UpsertLeaves`,\r\n ApproveOrRejectLeave: 'MasterData/MasterDataManagementApi/ApproveOrRejectLeave',\r\n UpsertTestCaseTypeMasterValue: `TestRail/TestSuiteApi/UpsertTestCaseTypeMasterValue`,\r\n GetLeaveSessionsById: `LeaveSessions/LeaveSessionsApi/GetLeaveSessionsById`,\r\n UpsertTestCaseTitle: `TestRail/TestSuiteApi/UpsertTestCaseTitle`,\r\n UpsertTestSuiteSubSection: `TestRail/TestSuiteApi/UpsertTestSuiteSubSection`,\r\n GetFutureUserStories: `UserStory/UserStoryApi/GetFutureUserStories`,\r\n GetAssetsCount: `Assets/AssetApi/GetAssetsCount`,\r\n GetEducationLevels: `MasterData/MasterDataManagementApi/GetEducationLevels`,\r\n GetAllWorkFlows: `WorkFlow/WorkFlowApi/GetAllWorkFlows`,\r\n UpsertEmployeeImmigrationDetails: `HrManagement/HrManagementApi/UpsertEmployeeImmigrationDetails`,\r\n GetWorkflowById: `WorkFlow/WorkFlowApi/GetWorkflowById`,\r\n SearchSpentTimeReport: `UserStory/UserStoryApi/SearchSpentTimeReport`,\r\n GetAllBoardTypeUis: `BoardTypes/BoardTypeUiApi/GetAllBoardTypeUis`,\r\n GetCustomApplicationWorkflow: `CustomAppplication/CustomApplicationApi/GetCustomApplicationWorkflow`,\r\n GetCustomApplicationWorkflowTypes: `CustomAppplication/CustomApplicationApi/GetCustomApplicationWorkflowTypes`,\r\n GetRecentIndividualMessages: `api/ChatApi/GetRecentIndividualMessages`,\r\n UploadTestSuiteCasesFromExcel: `TestRail/TestSuiteApi/UploadTestSuiteCasesFromExcel`,\r\n UpsertEmployeeLicenceDetails: `HrManagement/HrManagementApi/UpsertEmployeeLicenceDetails`,\r\n GetCommentsByReceiverId: `Comments/CommentsApi/GetCommentsByReceiverId`,\r\n GetAllBoardTypes: `BoardTypes/BoardTypesApi/GetAllBoardTypes`,\r\n GetMyCanteenBalance: `Canteen/CanteenManagementApi/GetMyCanteenBalance`,\r\n SearchMerchants: `Expense/ExpenseApi/SearchMerchants`,\r\n GetCommentsCountByUserStoryId: `UserStory/UserStoryApi/GetCommentsCountByUserStoryId`,\r\n GetMandatoryFieldsBasedOnConfiguration: `ConfigurationTypes/ConfigurationSettingsApi/GetMandatoryFieldsBasedOnConfiguration`,\r\n GetIndustryById: `CompanyStructure/CompanyStructureApi/GetIndustryById`,\r\n GetLanguages: `MasterData/MasterDataManagementApi/GetLanguages`,\r\n GetProfessionalTaxRanges: `MasterDataManagement/PayRollComponentApi/GetProfessionalTaxRanges`,\r\n GetTaxSlabs: `MasterDataManagement/PayRollComponentApi/GetTaxSlabs`,\r\n GetEmployeesBonusDetails: `MasterDataManagement/PayRollComponentApi/GetEmployeesBonusDetails`,\r\n GetEmployeesForBonus: `MasterDataManagement/PayRollComponentApi/GetEmployees`,\r\n GetEmployeesPayTemplates: `MasterDataManagement/PayRollComponentApi/GetEmployeesPayTemplates`,\r\n GetEmployeePayrollConfiguration: `MasterDataManagement/PayRollComponentApi/GetEmployeePayrollConfiguration`,\r\n UpsertEmployeePayrollConfiguration: `MasterDataManagement/PayRollComponentApi/UpsertEmployeePayrollConfiguration`,\r\n GetPayrollStatusList: `MasterDataManagement/PayRollComponentApi/GetPayrollStatusList`,\r\n UpsertPayrollStatus: `MasterDataManagement/PayRollComponentApi/UpsertPayrollStatus`,\r\n UpsertEmployeeBonusDetails: `MasterDataManagement/PayRollComponentApi/UpsertEmployeeBonusDetails`,\r\n UpsertTaxSlabs: `MasterDataManagement/PayRollComponentApi/UpsertTaxSlabs`,\r\n UpsertProfessionalTaxRanges: `MasterDataManagement/PayRollComponentApi/UpsertProfessionalTaxRanges`,\r\n GetAllEmployees: `Employee/EmployeeApi/GetAllEmployees`,\r\n GetAllEmployeesDetails: `Employee/EmployeeApi/GetAllEmployeesDetails`,\r\n GetUserById: `User/UsersApi/GetUserById`,\r\n GetWorkflowStatusById: `WorkFlow/WorkFlowStatusApi/GetWorkflowStatusById`,\r\n DeleteWorkspace: `Widgets/WidgetsApi/DeleteWorkspace`,\r\n UpsertReportSeenStatus: `StatusReporting/StatusReportingApi/UpsertReportSeenStatus`,\r\n GetAllTestCaseStatuses: `TestRail/TestSuiteApi/GetAllTestCaseStatuses`,\r\n SearchTestRuns: `TestRail/TestRunApi/SearchTestRuns`,\r\n UpsertPaymentMethod: `HrManagement/HrManagementApi/UpsertPaymentMethod`,\r\n GetBugsCountForUserStory: `UserStory/UserStoryApi/GetBugsCountForUserStory`,\r\n PrintAssets: `Assets/AssetApi/PrintAssets`,\r\n GetDepartments: `HrManagement/HrManagementApi/GetDepartments`,\r\n ParkGoal: `Goals/GoalsApi/ParkGoal`,\r\n SearchAdhocWork: `AdhocWork/AdhocWorkApi/SearchAdhocWork`,\r\n SearchFile: `File/FileApi/SearchFile`,\r\n GetCustomApplicationKeys: `CustomAppplication/CustomApplicationApi/GetCustomApplicationKeys`,\r\n UploadFileAsync: 'api/CustomApplicationApi/UploadFileAsync',\r\n SearchEmployeeContractDetails: `HrManagement/HrManagementApi/SearchEmployeeContractDetails`,\r\n UpsertTransitionDeadline: `TransitionDeadline/TransitionDeadlineApi/UpsertTransitionDeadline`,\r\n GetBreakTypes: `HrManagement/HrManagementApi/GetBreakTypes`,\r\n GetTestSuiteCasesOverview: `TestRail/TestSuiteApi/GetTestSuiteCasesOverview`,\r\n SearchShiftTiming: `HrManagement/HrManagementApi/SearchShiftTiming`,\r\n GetUserStoryStatuses: `ProductivityDashboard/ProductivityDashboardApi/GetUserStoryStatuses`,\r\n UpsertUserStoryStatus: ``,\r\n UpsertComment: `Comments/CommentsApi/UpsertComment`,\r\n UpdateAssigneeForMultipleAssets: `Assets/AssetApi/UpdateAssigneeForMultipleAssets`,\r\n SearchProductDetails: `Products/ProductsApi/SearchProductDetails`,\r\n GetEntityRole: `EntityRole/EntityRoleApi/GetEntityRole`,\r\n GetGoalActivity: `Goals/GoalsApi/GetGoalActivity`,\r\n SearchEmployeeWorkExperienceDetails: `HrManagement/HrManagementApi/SearchEmployeeWorkExperienceDetails`,\r\n UpsertChannel: `api/ChatApi/UpsertChannel`,\r\n ChangeFoodOrderStatus: `FoodOrders/FoodOrderManagementApi/ChangeFoodOrderStatus`,\r\n GetTestCasesHierarchy: `TestRail/TestSuiteApi/GetTestCasesHierarchy`,\r\n UpsertSeating: `Assets/AssetApi/UpsertSeatingArrangement`,\r\n GetGenericFormKey: `GenericForm/GenericFormApi/GetGenericFormKey`,\r\n GetCurrencyConversions: `HrManagement/HrManagementApi/GetCurrencyConversions`,\r\n SearchTimeFormats: `CompanyStructure/CompanyStructureApi/SearchTimeFormats`,\r\n GetHolidays: `MasterData/MasterDataManagementApi/GetHolidays`,\r\n GetOpenMilestoneCount: `TestRail/MilestoneApi/GetOpenMilestoneCount`,\r\n UpsertProcessDashboard: `Dashboard/ProcessDashboardApi/UpsertProcessDashboard`,\r\n UpsertRegion: `CompanyStructureManagement/CompanyStructureManagementApi/UpsertRegion`,\r\n UpsertCustomApplicationWorkflow: `CustomAppplication/CustomApplicationApi/UpsertCustomApplicationWorkflow`,\r\n UpsertSoftLabels: `SoftLabels/SoftLabelsApi/UpsertSoftLabels`,\r\n GetLatestDashboardId: `Dashboard/ProcessDashboardApi/GetLatestDashboardId`,\r\n GetAllTestCaseTypes: `TestRail/TestSuiteApi/GetAllTestCaseTypes`,\r\n SearchExpenses: `Expense/ExpenseApi/SearchExpenses`,\r\n SearchExpenseHistory: `Expense/ExpenseApi/SearchExpenseHistory`,\r\n UpsertUserStorySubType: `UserStory/UserStorySubTypeApi/UpsertUserStorySubType`,\r\n GetIndustryModuleById: ` CompanyStructure/CompanyStructureApi/GetIndustryModuleById`,\r\n GetTestRunById: `TestRail/TestRunApi/GetTestRunById`,\r\n CustomWidgetNameValidator: `Widgets/WidgetsApi/CustomWidgetNameValidator`,\r\n GetAllRoles: `Roles/RolesApi/GetAllRoles`,\r\n GetActTrackerRoleConfigurationRoles: `ActTracker/ActTrackerApi/GetActTrackerRoleConfigurationRoles`,\r\n GetActTrackerScreenShotFrequencyRoles: `ActTracker/ActTrackerApi/GetActTrackerScreenShotFrequencyRoles`,\r\n GetActTrackerRolePermissionRoles: `ActTracker/ActTrackerApi/GetActTrackerRolePermissionRoles`,\r\n UpsertActTrackerRolePermission: `ActTracker/ActTrackerApi/UpsertActTrackerRolePermission`,\r\n UpsertActTrackerRoleConfiguration: `ActTracker/ActTrackerApi/UpsertActTrackerRoleConfiguration`,\r\n UpsertActTrackerScreenShotFrequency: `ActTracker/ActTrackerApi/UpsertActTrackerScreenShotFrequency`,\r\n GetActTrackerRoleDropDown: `ActTracker/ActTrackerApi/GetActTrackerRoleDropDown`,\r\n getActTrackerAppUrlType: `ActTracker/ActTrackerApi/GetActTrackerAppUrlType`,\r\n UpsertActTrackerAppUrls: `ActTracker/ActTrackerApi/UpsertActTrackerAppUrls`,\r\n GetActTrackerAppUrls: `ActTracker/ActTrackerApi/GetActTrackerAppUrls`,\r\n GetActTrackerAppReportUsage: `ActTracker/ActTrackerApi/GetActTrackerAppReportUsage`,\r\n GetActTrackerUserActivityScreenshots: `ActTracker/ActTrackerApi/GetActTrackerUserActivityScreenshots`,\r\n MultipleDeleteScreenShot: `ActTracker/ActTrackerApi/MultipleDeleteScreenShot`,\r\n GetActTrackerRecorder: `ActTracker/ActTrackerApi/GetActTrackerRecorder`,\r\n UpsertActivityTrackerConfigurationState: `ActTracker/ActTrackerApi/UpsertActivityTrackerConfigurationState`,\r\n GetActivityTrackerConfigurationState: `ActTracker/ActTrackerApi/GetActivityTrackerConfigurationState`,\r\n GetActTrackerUserStatus: `ActTracker/ActTrackerApi/GetActTrackerUserStatus`,\r\n UpsertProduct: `Products/ProductsApi/UpsertProduct`,\r\n GetMonthlyLogTimeReport: `HrDashboard/HrDashboardApi/GetMonthlyLogTimeReport`,\r\n UpsertEmployeeSkills: `HrManagement/HrManagementApi/UpsertEmployeeSkills`,\r\n UpsertTimeFormat: `MasterData/MasterDataManagementApi/UpsertTimeFormat`,\r\n UpsertEmployeeContactDetails: `HrManagement/HrManagementApi/UpsertEmployeeContactDetails`,\r\n UpsertCustomAppFilter: `Widgets/WidgetsApi/UpsertCustomAppFilter`,\r\n UpsertIndustryModule: `CompanyStructure/CompanyStructureApi/UpsertIndustryModule`,\r\n GetFoodItemById: `Canteen/CanteenManagementApi/GetFoodItemById`,\r\n GetSubscriptionPaidByOptions: `MasterData/MasterDataManagementApi/GetSubscriptionPaidByOptions`,\r\n UpdatePassword: `api/LoginApi/UpdatePassword`,\r\n UpdateMultipleUserStoriesDeadlineConfigurations: `UserStory/UserStoryApi/UpdateMultipleUserStoriesDeadlineConfigurations`,\r\n UpdateUserStoryGoal: `UserStory/UserStoryApi/UpdateUserStoryGoal`,\r\n UpsertCanteenCredit: `Canteen/CanteenManagementApi/UpsertCanteenCredit`,\r\n UpsertGenericFormKey: `GenericForm/GenericFormApi/UpsertGenericFormKey`,\r\n GetFormTypes: `GenericForm/GenericFormApi/GetFormTypes`,\r\n GetConsideredHoursById: `ConsideredHours/ConsideredHoursApi/GetConsideredHoursById`,\r\n GetGoalComments: `Goals/GoalsApi/GetGoalComments`,\r\n GetTestSuiteSectionById: `TestRail/TestSuiteApi/GetTestSuiteSectionById`,\r\n GetReferenceTypes: `MasterData/MasterDataManagementApi/GetReferenceTypes`,\r\n GetAllPermittedEntityFeatures: `EntityType/EntityFeatureApi/GetAllPermittedEntityFeatures`,\r\n SearchRelationship: `HRManagement/HRManagementApi/SearchRelationShips`,\r\n SearchTestRunCaseDetailsById: `TestRail/TestSuiteApi/SearchTestRunCaseDetailsById`,\r\n GetMilestoneById: `TestRail/MilestoneApi/GetMilestoneById`,\r\n UpdateChannel: `api/ChatApi/UpdateChannel`,\r\n GetMemberships: `MasterData/MasterDataManagementApi/GetMemberships`,\r\n GetEmployeeOverViewDetails: `HrManagement/HrManagementApi/GetEmployeeOverViewDetails`,\r\n GetDashboards: `Widgets/WidgetsApi/GetDashboards`,\r\n GetLoggingCompliance: `TimeSheet/TimeSheetApi/GetLoggingCompliance`,\r\n UpsertExpense: `Expense/ExpenseApi/UpsertExpense`,\r\n ApproveOrRejectExpense: `Expense/ExpenseApi/ApproveOrRejectExpense`,\r\n UpdateTestCaseStatus: `TestRail/TestRunApi/UpdateTestCaseStatus`,\r\n UpsertCopyMoveCases: `TestRail/TestSuiteApi/UpsertCopyOrMoveCases`,\r\n AddOrUpdateResetPassword: `api/LoginApi/AddOrUpdateResetPassword`,\r\n GetAllBugPriorities: `Status/BugPriorityApi/GetAllBugPriorities`,\r\n GetEmploymentStatus: `MasterDataManagement/MasterDataManagementApi/GetEmploymentStatus`,\r\n GetAllProjectFeaturesByProjectId: `Projects/ProjectFeaturesApi/GetAllProjectFeaturesByProjectId`,\r\n GetUserStoriesWaitingForQaApproval: `ProductivityDashboard/ProductivityDashboardApi/GetUserStoriesWaitingForQaApproval`,\r\n GetUserStoriesForAllGoals: `UserStory/UserStoryApi/GetUserStoriesForAllGoals`,\r\n SearchMilestones: `TestRail/MilestoneApi/SearchMilestones`,\r\n GetTestRailReportById: `TestRail/ReportApi/GetTestRailReportById`,\r\n GetEmployeeSpentTime: `HrDashboard/HrDashboardApi/GetEmployeeSpentTime`,\r\n SearchLeaves: `Leaves/LeavesManagementApi/SearchLeaves`,\r\n GetLeaveStatusSetHistory: `Leaves/LeavesManagementApi/GetLeaveStatusSetHistory`,\r\n GetLeaveOverViewReport: `MasterData/MasterDataManagementApi/GetLeaveOverViewRepport`,\r\n GetGenericFormSubmitted: `GenericForm/GenericFormApi/GetGenericFormSubmitted`,\r\n GetEmployeeDependentContactsById: `HRManagement/HRManagementApi/GetEmployeeDependentContactsById`,\r\n SearchAuditHistory: `Audit/AuditApi/SearchAuditHistory`,\r\n SearchRoleFeatures: `Roles/RoleFeatureApi/SearchRoleFeatures`,\r\n GetAllFeatures: `Features/FeaturesApi/GetAllFeatures`,\r\n GetMyAssets: `Assets/AssetApi/GetMyAssets`,\r\n GetGenericForms: `GenericForm/GenericFormApi/GetGenericForms`,\r\n GetRestrictionTypes: `MasterData/MasterDataManagementApi/GetRestrictionTypes`,\r\n GetUserFeedTimeHistory: `TimeSheet/TimeSheetApi/GetUserFeedTimeHistory`,\r\n GetActivelyRunningProjectGoal: \"Goals/GoalsApi/GetActivelyRunningProjectGoals\",\r\n GetMyProjectOverViewDetails: 'MyWork/MyWorkApi/GetMyWorkOverViewDetails',\r\n GetStores: 'DocumentManagement/StoreManagementApi/GetStores',\r\n UpsertStore: 'DocumentManagement/StoreManagementApi/UpsertStore',\r\n UpsertFolder: 'File/FileApi/UpsertFolder',\r\n UpsertFileDetails: 'File/FileApi/UpsertFileDetails',\r\n SearchFolder: 'File/FileApi/SearchFolder',\r\n ReviewFile: 'File/FileApi/ReviewFile',\r\n UpsertFileName: 'File/FileApi/UpsertFileName',\r\n FolderTreeView: 'DocumentManagement/StoreManagementApi/FolderTreeView',\r\n GetFoldersAndFiles: 'File/FileApi/GetFoldersAndFiles',\r\n UpsertUploadFile: 'File/FileApi/UpsertUploadFile',\r\n UpsertAccessisbleIpAdresses: `MasterData/AccessibleIpAddressApi/UpsertAccessibleIpAddresses`,\r\n GetAdhocUsersDropDown: 'User/UsersApi/GetAdhocUsersDropDown',\r\n GetClients: 'BillingManagement/ClientApi/GetClients',\r\n GetSecondaryContactDetails: \"BillingManagement/ClientApi/GetClientSecondaryContacts\",\r\n UpsertClientDetails: 'BillingManagement/ClientApi/UpsertClient',\r\n GetSecondaryContacts: \"BillingManagement/ClientApi/GetClientSecondaryContacts\",\r\n UpsertSecondaryContactDetails: \"BillingManagement/ClientApi/UpsertClientSecondaryContact\",\r\n MultipleClientDelete: \"BillingManagement/ClientApi/MultipleClientDelete\",\r\n GetInvoices: 'BillingManagement/InvoiceApi/GetInvoice',\r\n UpsertInvoice: 'BillingManagement/InvoiceApi/UpsertInvoice',\r\n GetInvoiceGoals: 'BillingManagement/InvoiceApi/GetInvoiceGoals',\r\n GetInvoiceTasks: 'BillingManagement/InvoiceApi/GetInvoiceTasks',\r\n GetInvoiceItems: 'BillingManagement/InvoiceApi/GetInvoiceItems',\r\n GetInvoiceProjects: 'BillingManagement/InvoiceApi/GetInvoiceProjects',\r\n GetInvoiceTax: 'BillingManagement/InvoiceApi/GetInvoiceTax',\r\n GetUserStoryTypeDropDown: 'MasterData/MasterDataManagementApi/GetUserStoryTypeDropDown',\r\n GetUserStoryLinkTypes: 'UserStory/UserStoryLinkApi/GetUserStoryLinkTypes',\r\n UpsertUserStoryLink: 'UserStory/UserStoryLinkApi/UpsertUserStoryLink',\r\n ArchiveUserStoryLink: 'UserStory/UserStoryLinkApi/ArchiveUserStoryLink',\r\n GetUserStoryLinks: 'UserStory/UserStoryLinkApi/GetUserStoryLinks',\r\n UpdateUserStoryLink: 'UserStory/UserStoryApi/UpdateUserStoryLink',\r\n UpsertGoalFilters: 'Goals/GoalsApi/UpsertGoalFilterDetails',\r\n ArchiveGoalFilter: 'Goals/GoalsApi/ArchiveGoalFilter',\r\n GetGoalFiltersList: 'Goals/GoalsApi/GetGoalFiltersList',\r\n GetUsersDropDown: 'User/UsersApi/GetUsersDropDown',\r\n SearchSystemCurrencies: 'SystemManagement/SystemManagementApi/SearchSystemCurrencies',\r\n SearchSystemCountries: 'SystemManagement/SystemManagementApi/SearchSystemCountries',\r\n SearchSystemRoles: 'SystemManagement/SystemManagementApi/SearchSystemRoles',\r\n DeleteCompanyTestData: `CompanyStructure/CompanyStructureApi/DeleteCompanyTestData`,\r\n GetTestTeamStatusReporing: `TestRail/TestRunApi/GetTestTeamStatusReporing`,\r\n GetWidgetsBasedOnUser: `Widgets/WidgetsApi/GetWidgetsBasedOnUser`,\r\n GetAssetDetailsById: `Assets/AssetApi/GetAssetDetailsById`,\r\n GetCustomWidgets: `Widgets/WidgetsApi/GetCustomWidgets`,\r\n GetUserStoryTypes: `MasterData/MasterDataManagementApi/GetUserStoryTypes`,\r\n GetCompanyTheme: `Company/CompanyStructure/GetTheme`,\r\n CompanyLogin: \"api/LoginApi/CompanyLogin\",\r\n GetUsersInitialData: \"MasterData/MasterDataManagementApi/GetUsersInitialData\",\r\n IsCompanyExists: 'Company/CompanyStructure/IsCompanyExists',\r\n DeleteFile: `File/FileApi/DeleteFile`,\r\n GetLinksCountForUserStory: `UserStory/UserStoryLinkApi/GetLinksCountForUserStory`,\r\n GetShiftTimingOptions: 'HrManagement/HrManagementApi/GetShiftTimingOptions',\r\n GetShiftWeek: 'HrManagement/HrManagementApi/GetShiftWeek',\r\n GetShiftException: 'HrManagement/HrManagementApi/GetShiftExcpetion',\r\n UpsertShiftException: 'HrManagement/HrManagementApi/UpsertShiftException',\r\n UpsertShiftWeek: 'HrManagement/HrManagementApi/UpsertShiftWeek',\r\n UpdatePersistance: `Persistance/PersistanceApi/UpdatePersistance`,\r\n GetPersistance: `Persistance/PersistanceApi/GetPersistance`,\r\n GetEmployeeShift: `HrManagement/HrManagementApi/GetEmployeeShift`,\r\n UpsertFeedBack: `Feedback/FeedbackApi/SubmitFeedBackForm`,\r\n GetFeedbacksList: `Feedback/FeedbackApi/GetFeedbacksList`,\r\n GetFeedbackById: `Feedback/FeedbackApi/GetFeedbackById`,\r\n SubmitBug: `Feedback/FeedbackApi/SubmitBug`,\r\n RequestMissingFeature: `Feedback/FeedbackApi/RequestMissingFeature`,\r\n ImportVerifiedApplication: `CustomAppplication/CustomApplicationApi/ImportVerifiedApplication`,\r\n GetStoreConfiguration: `DocumentManagement/StoreManagementApi/GetStoreConfiguration`,\r\n IsUsersStore: `DocumentManagement/StoreManagementApi/IsUsersStore`,\r\n UpsertCustomFieldForm: `CustomFields/CustomFieldApi/UpsertCustomFieldForm`,\r\n SearchCustomFieldForms: `CustomFields/CustomFieldApi/SearchCustomFieldForms`,\r\n GetCustomFormFieldById: `CustomFields/CustomFieldApi/GetCustomFormFieldById`,\r\n UpsertDashboardVisuaizationType: `Widgets/WidgetsApi/UpsertDashboardVisuaizationType`,\r\n UpdateCustomFieldData: `CustomFields/CustomFieldApi/UpdateCustomFieldData`,\r\n GetSoftLabelConfigurations: `MasterData/MasterDataManagementApi/GetSoftLabelConfigurations`,\r\n UpsertSoftLabelConfigurations: `MasterData/MasterDataManagementApi/UpsertSoftLabelConfigurations`,\r\n GetSoftLabelById: `MasterData/MasterDataManagementApi/GetSoftLabelById`,\r\n SetAsDefaultDashboardPersistance: `Widgets/WidgetsApi/SetAsDefaultDashboardPersistance`,\r\n ResetToDefaultDashboard: `Widgets/WidgetsApi/ResetToDefaultDashboard`,\r\n UpsertTemplate: `Templates/TemplatesApi/UpsertTemplate`,\r\n SearchTemplates: `Templates/TemplatesApi/SearchTemplate`,\r\n GetTemplateById: `Templates/TemplatesApi/GetTemplateById`,\r\n UpsertUserStoryType: `MasterData/MasterDataManagementApi/UpsertUserStoryType`,\r\n InsertTemplateDuplicate: `Templates/TemplatesApi/InsertTemplateDuplicate`,\r\n GetTemplatesUserStories: `UserStory/UserStoryApi/GetTemplateUserStories`,\r\n GetTemplateUserStoryById: `UserStory/UserStoryApi/GetTemplateUserStoryById`,\r\n InsertGoalByTemplateId: `UserStory/UserStoryApi/InsertGoalByTemplateId`,\r\n InsertDuplicateDashboard: `Widgets/WidgetsApi/InsertDuplicateDashboard`,\r\n SetDefaultDashboardForUser: `Widgets/WidgetsApi/SetDefaultDashboardForUser`,\r\n ReOrderTags: `Widgets/WidgetsApi/ReOrderWidgetTagsForUser`,\r\n GetTriggers: `AutomatedWorkflowManagement/AutomatedWorkflowManagementApi/GetTriggers`,\r\n GetWorkFlowTriggers: `AutomatedWorkflowManagement/AutomatedWorkflowManagementApi/GetWorkFlowTriggers`,\r\n UpsertWorkFlowTrigger: `AutomatedWorkflowManagement/AutomatedWorkflowManagementApi/UpsertWorkflowTrigger`,\r\n GetWorkFlowsForTriggers: `AutomatedWorkflowManagement/AutomatedWorkflowManagementApi/GetWorkFlowsForTriggers`,\r\n DeleteTemplate: `Templates/TemplatesApi/DeleteTemplate`,\r\n GetPayRollComponents: `PayRoll/PayRollApi/GetPayRollComponents`,\r\n UpsertPayRollComponent: `PayRoll/PayRollApi/UpsertPayRollComponent`,\r\n GetPayRollTemplates: `PayRoll/PayRollApi/GetPayRollTemplates`,\r\n UpsertPayRollTemplate: `PayRoll/PayRollApi/UpsertPayRollTemplate`,\r\n GetPayRollTemplateConfigurations: `PayRoll/PayRollApi/GetPayRollTemplateConfigurations`,\r\n UpsertPayRollTemplateConfiguration: `PayRoll/PayRollApi/UpsertPayRollTemplateConfiguration`,\r\n GetResignationStatus: `PayRoll/PayRollApi/GetResignationStatus`,\r\n UpsertResignationStatus: `PayRoll/PayRollApi/UpsertResignationStatus`,\r\n GetPayRollRoleConfigurations: `PayRoll/PayRollApi/GetPayRollRoleConfigurations`,\r\n UpsertPayRollRoleConfiguration: `PayRoll/PayRollApi/UpsertPayRollRoleConfiguration`,\r\n GetPayRollBranchConfigurations: `PayRoll/PayRollApi/GetPayRollBranchConfigurations`,\r\n UpsertPayRollBranchConfiguration: `PayRoll/PayRollApi/UpsertPayRollBranchConfiguration`,\r\n GetPayRollGenderConfigurations: `PayRoll/PayRollApi/GetPayRollGenderConfigurations`,\r\n UpsertPayRollGenderConfiguration: `PayRoll/PayRollApi/UpsertPayRollGenderConfiguration`,\r\n GetPayRollMaritalStatusConfigurations: `PayRoll/PayRollApi/GetPayRollMaritalStatusConfigurations`,\r\n UpsertPayRollMaritalStatusConfiguration: `PayRoll/PayRollApi/UpsertPayRollMaritalStatusConfiguration`,\r\n UpsertEmployeeResignation: `PayRoll/PayRollApi/UpsertEmployeeResignation`,\r\n GetEmployeesResignation: 'PayRoll/PayRollApi/GetEmployeesResignation',\r\n GetComponents: `PayRoll/PayRollApi/GetComponents`,\r\n UpsertTaxAllowance: `PayRoll/PayRollApi/UpsertTaxAllowance`,\r\n GetTaxAllowances: 'PayRoll/PayRollApi/GetTaxAllowances',\r\n GetTaxAllowanceTypes: `PayRoll/PayRollApi/GetTaxAllowanceTypes`,\r\n UpsertEmployeeTaxAllowanceDetails: `PayRoll/PayRollApi/UpsertEmployeeTaxAllowanceDetails`,\r\n GetEmployeeTaxAllowanceDetails: 'PayRoll/PayRollApi/GetEmployeeTaxAllowanceDetails',\r\n GetPayrollRunList: `MasterDataManagement/PayRollComponentApi/GetPayrollRunList`,\r\n UpdatePayrollRunStatus: `MasterDataManagement/PayRollComponentApi/UpdatePayrollRunStatus`,\r\n RunPaymentForPayRollRun: `PayRollComponent/PayRollComponentApi/RunPaymentForPayRollRun`,\r\n GetPayrollRunemployeeList: `MasterDataManagement/PayRollComponentApi/GetPayrollRunemployeeList`,\r\n GetPaySlipDetails: `MasterDataManagement/PayRollComponentApi/GetPaySlipDetails`,\r\n InsertPayrollRun: `MasterDataManagement/PayRollComponentApi/InsertPayrollRun`,\r\n UpdatePayrollRunEmployeeStatus: `MasterDataManagement/PayRollComponentApi/UpdatePayrollRunEmployeeStatus`,\r\n DeleteUserStoryType: `MasterData/MasterDataManagementApi/DeleteUserStoryType`,\r\n UpsertCustomTags: `CustomTags/CustomTagsApi/UpsertCustomTags`,\r\n UpsertTags: `CustomTags/CustomTagsApi/UpsertTags`,\r\n GetCustomTags: `CustomTags/CustomTagsApi/GetCustomTags`,\r\n DeleteEntityRole: `EntityRole/EntityRoleApi/DeleteEntityRole`,\r\n DeleteRole: `Roles/RolesApi/DeleteRole`,\r\n GetCustomFieldHistory: `CustomFields/CustomFieldApi/GetCustomFieldHistory`,\r\n GetCustomApplicationTag: \"GenericForm/GenericFormApi/GetCustomApplicationTag\",\r\n SetCustomAppDashboardPersistanceForUser: \"Widgets/WidgetsApi/SetCustomAppDashboardPersistanceForUser\",\r\n GetCustomAppDashboardPersistanceForUser: \"Widgets/WidgetsApi/GetCustomAppDashboardPersistanceForUser\",\r\n GetObservationType: \"CustomAppplication/CustomApplicationApi/GetObservationType\",\r\n UpsertObservationType: \"CustomAppplication/CustomApplicationApi/UpsertObservationType\",\r\n SearchWorkItemsByLoggedInId: `UserStory/UserStoryApi/SearchWorkItemsByLoggedInId`,\r\n UpdateDashboardName: `Widgets/WidgetsApi/UpdateDashboardName`,\r\n GetResidentObservations: `CustomFields/CustomFieldApi/GetResidentObservations`,\r\n UpsertWorkspaceDashboardFilter: `Widgets/WidgetsApi/UpsertWorkspaceDashboardFilter`,\r\n GetWorkspaceDashboardFilters: `Widgets/WidgetsApi/GetWorkspaceDashboardFilters`,\r\n GetEmployeeLogTimeDetailsReport: `MyWork/MyWorkApi/GetEmployeeLogTimeDetailsReport`,\r\n GetWorkItemsDetailsReport: `MyWork/MyWorkApi/GetWorkItemsDetailsReport`,\r\n GetUsersSpentTimeDetailsReport: `MyWork/MyWorkApi/GetUsersSpentTimeDetailsReport`,\r\n GetWebHooks: `HrManagement/HrManagementApi/GetWebHooks`,\r\n UpsertWebHook: `HrManagement/HrManagementApi/UpsertWebHook`,\r\n GetHtmlTemplate: `HrManagement/HrManagementApi/GetHtmlTemplates`,\r\n GetInductionConfigurations: \"MasterData/GenericFormMasterDataApi/GetInductionConfigurations\",\r\n GetEmployeeInductions: \"MasterData/GenericFormMasterDataApi/GetEmployeeInductions\",\r\n UpsertInductionConfiguration: \"MasterData/GenericFormMasterDataApi/UpsertInductionConfiguration\",\r\n UpsertHtmlTemplate: `HrManagement/HrManagementApi/UpsertHtmlTemplate`,\r\n GetEntityDropDown: 'ProductivityDashboard/ProductivityDashboardApi/GetEntityDropDown',\r\n UpsertLeaveEncashmentSettings: `PayRoll/PayRollApi/UpsertLeaveEncashmentSettings`,\r\n GetLeaveEncashmentSettings: 'PayRoll/PayRollApi/GetLeaveEncashmentSettings',\r\n UpsertEmployeeAccountDetails: `PayRoll/PayRollApi/UpsertEmployeeAccountDetails`,\r\n GetEmployeeAccountDetails: 'PayRoll/PayRollApi/GetEmployeeAccountDetails',\r\n UpsertFinancialYearConfigurations: `PayRoll/PayRollApi/UpsertFinancialYearConfigurations`,\r\n GetFinancialYearConfigurations: 'PayRoll/PayRollApi/GetFinancialYearConfigurations',\r\n UpsertEmployeeCreditorDetails: `PayRoll/PayRollApi/UpsertEmployeeCreditorDetails`,\r\n GetEmployeeCreditorDetails: 'PayRoll/PayRollApi/GetEmployeeCreditorDetails',\r\n UpsertPayRollCalculationConfigurations: `PayRoll/PayRollApi/UpsertPayRollCalculationConfigurations`,\r\n GetPayRollCalculationConfigurations: 'PayRoll/PayRollApi/GetPayRollCalculationConfigurations',\r\n GetPeriodTypes: `PayRoll/PayRollApi/GetPeriodTypes`,\r\n GetPayRollCalculationTypes: `PayRoll/PayRollApi/GetPayRollCalculationTypes`,\r\n GetEmployeePayrollDetailsList: `PayRollComponent/PayRollComponentApi/GetEmployeePayrollDetailsList`,\r\n GetPayrollRunEmployeeCount: `MasterDataManagement/PayRollComponentApi/GetPayrollRunEmployeeCount`,\r\n DownloadPaySlip: `PayRollComponent/PayRollComponentApi/DownloadPaySlip`,\r\n SendEmailWithPayslip: `PayRollComponent/PayRollComponentApi/SendEmailWithPayslip`,\r\n GetCustomizedDashboardId: `Widgets/WidgetsApi/GetCustomizedDashboardId`,\r\n UpsertDashboardFilter: \"Widgets/WidgetsApi/UpsertDashboardFilter\",\r\n GetDashboardFilters: \"Widgets/WidgetsApi/GetDashboardFilters\",\r\n GetAllDashboardFilters: \"Widgets/WidgetsApi/GetAllDashboardFilters\",\r\n GetCustomApplicationTagKeys: \"GenericForm/GenericFormApi/GetCustomApplicationTagKeys\",\r\n UpsertFolderDescription: `File/FileApi/UpsertFolderDescription`,\r\n GetRateSheets: `MasterDataManagement/MasterDataManagementApi/GetRateSheets`,\r\n GetRateSheetForNames: `MasterDataManagement/MasterDataManagementApi/GetRateSheetForNames`,\r\n UpsertRateSheet: `MasterDataManagement/MasterDataManagementApi/UpsertRateSheet`,\r\n GetPeakHours: `MasterDataManagement/MasterDataManagementApi/GetPeakHours`,\r\n UpsertPeakHour: `MasterDataManagement/MasterDataManagementApi/UpsertPeakHour`,\r\n GetEmployeeRateSheetDetails: `HrManagement/HrManagementApi/GetEmployeeRateSheetDetails`,\r\n GetWeekDays: `MasterData/MasterDataManagementApi/GetWeekDays`,\r\n InsertEmployeeRatesheetDetails: `HrManagement/HrManagementApi/InsertEmployeeRatesheetDetails`,\r\n UpdateEmployeeRatesheetDetails: `HrManagement/HrManagementApi/UpdateEmployeeRatesheetDetails`,\r\n SearchEmployeeRatesheetDetails: `HrManagement/HrManagementApi/SearchEmployeeRatesheetDetails`,\r\n CreateRosterSolutions: `Roster/RosterApi/CreateRosterSolutions`,\r\n CreateRosterPlan: `Roster/RosterApi/CreateRosterPlan`,\r\n GetRosterPlans: `Roster/RosterApi/GetRosterPlans`,\r\n GetRosterPlanByRequest: `Roster/RosterApi/GetRosterPlanByRequest`,\r\n GetRosterSolutionByRequestId: `Roster/RosterApi/GetRosterSolutionsById`,\r\n CheckRosterName: `Roster/RosterApi/CheckRosterName`,\r\n GetRosterTemplatePlanByRequest: `Roster/RosterApi/GetRosterTemplatePlanByRequest`,\r\n GetInvoiceStatuses: `BillingManagement/InvoiceApi/GetInvoiceStatuses`,\r\n GetInvoiceHistory: `BillingManagement/InvoiceApi/GetInvoiceHistory`,\r\n UpsertEstimate: `BillingManagement/EstimateApi/UpsertEstimate`,\r\n GetEstimates: `BillingManagement/EstimateApi/GetEstimates`,\r\n GetEstimateStatuses: `BillingManagement/EstimateApi/GetEstimateStatuses`,\r\n GetEstimateHistory: `BillingManagement/EstimateApi/GetEstimateHistory`,\r\n DownloadOrSendPdfInvoice: `BillingManagement/InvoiceApi/DownloadOrSendPdfInvoice`,\r\n GetAccountTypes: `BillingManagement/InvoiceApi/GetAccountTypes`,\r\n DownloadOrSendPdfExpense: `Expense/ExpenseApi/DownloadOrSendPdfExpense`,\r\n InsertInvoiceLogPayment: `BillingManagement/InvoiceApi/InsertInvoiceLogPayment`,\r\n DeleteFileByReferenceId: `File/FileApi/DeleteFileByReferenceId`,\r\n UpsertSprints: `Sprints/SprintsApi/UpsertSprints`,\r\n SearchSprints: `Sprints/SprintsApi/SearchSprints`,\r\n GetSprintById: `Sprints/SprintsApi/GetSprintById`,\r\n DeleteSprint: `Sprints/SprintsApi/DeleteSprint`,\r\n UpsertReminder: \"HrManagement/HrManagementApi/UpsertReminder\",\r\n GetReminders: \"HrManagement/HrManagementApi/GetReminders\",\r\n GetSprintUserStories: `UserStory/UserStoryApi/GetSprintUserStories`,\r\n GetSprintUserStoryById: `UserStory/UserStoryApi/GetSprintUserStoryById`,\r\n GetAllUserStories: `UserStory/UserStoryApi/GetAllUserStories`,\r\n GetSprintActivityWithUserStories: `Sprints/SprintsApi/GetSprintActivityWithUserStories`,\r\n GetSprintReplanHistory: `UserStory/UserStoryReplanApi/GetSprintReplanHistory`,\r\n MoveGoalUserStoryToSprint: `UserStory/UserStoryApi/MoveGoalUserStoryToSprint`,\r\n GetTestRepoDataForJson: `TestRail/TestSuiteApi/GetTestRepoDataForJson`,\r\n ReorderTestCases: `TestRail/TestSuiteApi/ReorderTestCases`,\r\n MoveCasesToSection: `TestRail/TestSuiteApi/MoveCasesToSection`,\r\n SearchAudits: `Audit/AuditApi/SearchAudits`,\r\n UpsertAudit: `Audit/AuditApi/UpsertAudit`,\r\n SearchAuditCompliances: `ComplianceAudit/ComplianceAuditApi/SearchAudits`,\r\n UpsertAuditCompliance: `ComplianceAudit/ComplianceAuditApi/UpsertAuditCompliance`,\r\n SearchAuditCategories: `ComplianceAudit/ComplianceAuditApi/SearchAuditCategories`,\r\n UpsertAuditCategory: `ComplianceAudit/ComplianceAuditApi/UpsertAuditCategory`,\r\n GetAuditRelatedCounts: `ComplianceAudit/ComplianceAuditApi/GetAuditRelatedCounts`,\r\n SearchAuditConducts: `ComplianceAudit/ComplianceAuditApi/SearchAuditConducts`,\r\n UpsertAuditConduct: `ComplianceAudit/ComplianceAuditApi/UpsertAuditConduct`,\r\n SearchMasterQuestionTypes: `ComplianceAudit/ComplianceAuditApi/SearchMasterQuestionTypes`,\r\n SearchQuestionTypes: `ComplianceAudit/ComplianceAuditApi/SearchQuestionTypes`,\r\n UpsertQuestionType: `ComplianceAudit/ComplianceAuditApi/UpsertQuestionType`,\r\n GetFinancialYearTypes: `PayRoll/PayRollApi/GetFinancialYearTypes`,\r\n DownloadEmployeeSalaryCertificate: `PayRoll/PayRollApi/DownloadEmployeeSalaryCertificate`,\r\n UpsertBadge: \"HrManagement/HrManagementApi/UpsertBadge\",\r\n GetBadges: \"HrManagement/HrManagementApi/GetBadges\",\r\n UpsertSignature: \"HrDashboard/HrDashboardApi/UpsertSignature\",\r\n GetSignature: \"HrDashboard/HrDashboardApi/GetSignature\",\r\n AssignBadgeToEmployee: \"HrManagement/HrManagementApi/AssignBadgeToEmployee\",\r\n GetBadgesAssignedToEmployee: \"HrManagement/HrManagementApi/GetBadgesAssignedToEmployee\",\r\n UpsertAnnouncement: \"HrManagement/HrManagementApi/UpsertAnnouncement\",\r\n UpsertPerformanceConfiguration: \"Performance/PerformanceApi/UpsertPerformanceConfiguration\",\r\n GetPerformanceConfigurations: \"Performance/PerformanceApi/GetPerformanceConfigurations\",\r\n UpsertPerformance: \"Performance/PerformanceApi/UpsertPerformance\",\r\n GetPerformances: \"Performance/PerformanceApi/GetPerformances\",\r\n UpsertPerformanceSubmission: \"Performance/PerformanceApi/UpsertPerformanceSubmission\",\r\n UpsertPerformanceSubmissionDetails: \"Performance/PerformanceApi/UpsertPerformanceSubmissionDetails\",\r\n GetPerformanceSubmissions: \"Performance/PerformanceApi/GetPerformanceSubmissions\",\r\n GetPerformanceSubmissionDetails: \"Performance/PerformanceApi/GetPerformanceSubmissionDetails\",\r\n GetPerformanceReports: \"Performance/PerformanceApi/GetPerformanceReports\",\r\n GetAnnouncements: \"HrManagement/HrManagementApi/GetAnnouncements\",\r\n GetEmployeeDetailsHistory: \"HrManagement/HrManagementApi/GetEmployeeDetailsHistory\",\r\n GetOrganizationChartDetails: \"HrDashboard/HrDashboardApi/GetOrganizationChartDetails\",\r\n CompleteSprint: `Sprints/SprintsApi/CompleteSprint`,\r\n EmployeeUpload: `HrManagement/HrManagementApi/EmployeeUpload`,\r\n EmployeeUploadTemplate: `HrManagement/HrManagementApi/GetEmployeeUploadTemplate`,\r\n WorkItemUploadTemplate: `UserStory/UserStoryApi/GetWorkItemUploadTemplate`,\r\n WorkItemUpload: `UserStory/UserStoryApi/WorkItemUpload`,\r\n GetProductivityIndexUserStoriesForDevelopers: `ProductivityDashboard/ProductivityDashboardApi/GetProductivityIndexUserStoriesForDevelopers`,\r\n GetSprintsBugReport: `UserStory/UserStoryApi/GetSprintsBugReport`,\r\n UpsertMasterQuestionType: `ComplianceAudit/ComplianceAuditApi/UpsertMasterQuestionType`,\r\n UpsertAuditQuestion: `ComplianceAudit/ComplianceAuditApi/UpsertAuditQuestion`,\r\n SearchAuditQuestions: `ComplianceAudit/ComplianceAuditApi/SearchAuditQuestions`,\r\n GetCategoriesAndSubcategories: `ComplianceAudit/ComplianceAuditApi/GetCategoriesAndSubcategories`,\r\n GetAuditQuestionHistory: `ComplianceAudit/ComplianceAuditApi/GetAuditQuestionHistory`,\r\n ReOrderQuestions: `ComplianceAudit/ComplianceAuditApi/ReorderQuestions`,\r\n CopyOrMoveQuestions: `ComplianceAudit/ComplianceAuditApi/CopyOrMoveQuestions`,\r\n GetQuestionsByFilters: `ComplianceAudit/ComplianceAuditApi/GetQuestionsByFilters`,\r\n SearchAuditCategoriesForConducts: `ComplianceAudit/ComplianceAuditApi/SearchAuditCategoriesForConducts`,\r\n upsertEmployeeTimeSheetPunchCard: `TimeSheet/TimeSheetApi/UpsertEmployeeTimeSheetPunchCard`,\r\n UpsertApproverEditTimeSheet: `TimeSheet/TimeSheetApi/UpsertApproverEditTimeSheet`,\r\n updateEmployeeTimeSheetPunchCard: `TimeSheet/TimeSheetApi/UpdateEmployeeTimeSheetPunchCard`,\r\n getEmployeeTimeSheetPunchCardDetails: `TimeSheet/TimeSheetApi/GetEmployeeTimeSheetPunchCardDetails`,\r\n getApproverTimeSheetSubmissions: `TimeSheet/TimeSheetApi/GetApproverTimeSheetSubmissions`,\r\n GetStatus: `TimeSheet/TimeSheetApi/GetStatus`,\r\n GetTimeSheetApproveLineManagers: `TimeSheet/TimeSheetApi/GetTimeSheetApproveLineManagers`,\r\n GetEmployeeShiftWeekDays: `TimeSheet/TimeSheetApi/GetEmployeeShiftWeekDays`,\r\n GetTimeSheetSubmissionTypes: `TimeSheet/TimeSheetApi/GetTimeSheetSubmissionTypes`,\r\n UpsertTimeSheetSubmission: `TimeSheet/TimeSheetApi/UpsertTimeSheetSubmission`,\r\n GetTimeSheetSubmissions: `TimeSheet/TimeSheetApi/GetTimeSheetSubmissions`,\r\n MoveAuditQuestionsToAuditCategory: `ComplianceAudit/ComplianceAuditApi/MoveAuditQuestionsToAuditCategory`,\r\n GetShiftwiseEmployeeRoster: `Roster/RosterApi/LoadShiftwiseEmployeeForRoster`,\r\n SearchAuditConductQuestions: `ComplianceAudit/ComplianceAuditApi/SearchAuditConductQuestions`,\r\n GetESIMonthlyStatement: `PayRoll/PayRollApi/GetESIMonthlyStatement`,\r\n GetSalaryRegister: `PayRoll/PayRollApi/GetSalaryRegister`,\r\n GetProfessionTaxMonthlyStatement: `PayRoll/PayRollApi/GetProfessionTaxMonthlyStatement`,\r\n GetProfessionTaxReturns: `PayRoll/PayRollApi/GetProfessionTaxReturns`,\r\n GetSalaryBillRegister: `PayRoll/PayRollApi/GetSalaryBillRegister`,\r\n UpsertGrade: `HrManagement/HrManagementApi/UpsertGrade`,\r\n GetGrades: `HrManagement/HrManagementApi/GetGrades`,\r\n UpsertEmployeeGrade: `HrManagement/HrManagementApi/UpsertEmployeeGrade`,\r\n GetEmployeeGrades: `HrManagement/HrManagementApi/GetEmployeeGrades`,\r\n GetIncomeSalaryStatementDetail: `PayRoll/PayRollApi/GetIncomeSalaryStatementDetails`,\r\n GetFormvPdf: `PayRoll/PayRollApi/GetFormvPdf`,\r\n GetHourlyTdsConfiguration: `PayRoll/PayRollApi/GetHourlyTdsConfiguration`,\r\n UpsertHourlyTdsConfiguration: `PayRoll/PayRollApi/UpsertHourlyTdsConfiguration`,\r\n GetDaysOfWeekConfiguration: `PayRoll/PayRollApi/GetDaysOfWeekConfiguration`,\r\n UpsertDaysOfWeekConfiguration: `PayRoll/PayRollApi/UpsertDaysOfWeekConfiguration`,\r\n GetAllowanceTime: `PayRoll/PayRollApi/GetAllowanceTime`,\r\n UpsertAllowanceTime: `PayRoll/PayRollApi/UpsertAllowanceTime`,\r\n UpsertEmployeeLoanInstallment: `PayRoll/PayRollApi/UpsertEmployeeLoanInstallment`,\r\n GetPayRollMonthlyDetails: `PayRoll/PayRollApi/GetPayRollMonthlyDetails`,\r\n GetContractPaySettings: `PayRoll/PayRollApi/GetContractPaySettings`,\r\n UpsertContractPaySettings: `PayRoll/PayRollApi/UpsertContractPaySettings`,\r\n GetContractPayTypes: `PayRoll/PayRollApi/GetContractPayTypes`,\r\n GetPartsOfDays: `PayRoll/PayRollApi/GetPartsOfDays`,\r\n GetEmployeeLoans: `PayRoll/PayRollApi/GetEmployeeLoans`,\r\n UpsertEmployeeLoan: `PayRoll/PayRollApi/UpsertEmployeeLoan`,\r\n GetLoanTypes: `PayRoll/PayRollApi/GetLoanTypes`,\r\n GetTdsSettings: `PayRoll/PayRollApi/GetTdsSettings`,\r\n UpsertTdsSettings: `PayRoll/PayRollApi/UpsertTdsSettings`,\r\n GetEmployeeLoanInstallment: `PayRoll/PayRollApi/GetEmployeeLoanInstallment`,\r\n FinalPayRollRun: `PayRollComponent/PayRollComponentApi/FinalPayRollRun`,\r\n GetPayRollRunEmployeeLeaveDetailsList: `PayRollComponent/PayRollComponentApi/GetPayRollRunEmployeeLeaveDetailsList`,\r\n GetPayRollRunTemplate: `PayRoll/PayRollApi/GetPayRollRunTemplate`,\r\n SubmitAuditConductQuestion: `ComplianceAudit/ComplianceAuditApi/SubmitAuditConductQuestion`,\r\n SubmitAuditConduct: `ComplianceAudit/ComplianceAuditApi/SubmitAuditConduct`,\r\n GetAppUsageCompleteReport: `ActivityTracker/ActivityTrackerApi/GetAppUsageCompleteReport`,\r\n SearchConductQuestionActions: `ComplianceAudit/ComplianceAuditApi/SearchConductQuestionActions`,\r\n SearchSubmittedAudits: 'ComplianceAudit/ComplianceAuditApi/SearchSubmittedAudits',\r\n SearchNonCompalintAudits: 'ComplianceAudit/ComplianceAuditApi/SearchNonCompalintAudits',\r\n UpsertAuditReport: 'ComplianceAudit/ComplianceAuditApi/UpsertAuditReport',\r\n SearchAuditReports: 'ComplianceAudit/ComplianceAuditApi/GetAuditReports',\r\n SendAuditReportAsPdf: `ComplianceAudit/ComplianceAuditApi/SendAuditReportAsPdf`,\r\n UpsertAuditTags: 'ComplianceAudit/ComplianceAuditApi/UpsertAuditTags',\r\n GetTags: `ComplianceAudit/ComplianceAuditApi/GetTags`,\r\n GetAppUsageUserStoryReport: `ActivityTracker/ActivityTrackerApi/GetAppUsageUserStoryReport`,\r\n GetAppUsageTimesheetReport: `ActivityTracker/ActivityTrackerApi/GetAppUsageTimesheetReport`,\r\n GetAuditOverallHistory: `ComplianceAudit/ComplianceAuditApi/GetAuditOverallHistory`,\r\n SearchTrainingCourses: `Training/TrainingCourseApi/SearchTrainingCourses`,\r\n UpsertTrainingCourse: `Training/TrainingCourseApi/UpsertTrainingCourse`,\r\n SearchTrainingAssignments: `Training/TrainingCourseApi/SearchTrainingAssignments`,\r\n ArchiveOrUnArchiveTrainingCourse: `Training/TrainingCourseApi/ArchiveOrUnArchiveTrainingCourse`,\r\n GetTrainingCourses: `Training/TrainingCourseApi/GetTrainingCourses`,\r\n AssignOrUnAssignTrainingCourse: `Training/TrainingCourseApi/AssignOrUnAssignTrainingCourse`,\r\n UploadFileChunks: `File/FileApi/UploadFileChunks`,\r\n CloneAudit: `ComplianceAudit/ComplianceAuditApi/CloneAudit`,\r\n GetAssignmentStatuses: `Training/TrainingCourseApi/GetAssignmentStatuses`,\r\n AddOrUpdateAssignmentStatus: `Training/TrainingCourseApi/AddOrUpdateAssignmentStatus`,\r\n GetAuditByBranch: `Audit/AuditApi/GetAuditByBranch`,\r\n GetAuditConductTimeline: `Audit/AuditApi/GetAuditConductTimeline`,\r\n GetEmployeeLoanStatementDocument: `PayRoll/PayRollApi/GetEmployeeLoanStatementDocument`,\r\n UpsertPayRollRunEmployeeComponent: `PayRoll/PayRollApi/UpsertPayRollRunEmployeeComponent`,\r\n GetRegisterOfWages: `PayRoll/PayRollApi/GetRegisterOfWages`,\r\n GetEmployeeESIReport: `PayRoll/PayRollApi/GetEmployeeESIReport`,\r\n GetEmployeePFReport: `PayRoll/PayRollApi/GetEmployeePFReport`,\r\n GetTakeHomeAmount: `PayRoll/PayRollApi/GetTakeHomeAmount`,\r\n GetUserCountry: `PayRoll/PayRollApi/GetUserCountry`,\r\n GetSalaryforITOfAnEmployee: `PayRoll/PayRollApi/GetSalaryforITOfAnEmployee`,\r\n UpsertActivityTrackerUserConfiguration: `ActTracker/ActTrackerApi/UpsertActivityTrackerUserConfiguration`,\r\n GetAddOrEditCustomAppIsRequired: `MasterData/MasterDataManagementApi/GetAddOrEditCustomAppIsRequired`,\r\n DeleteLinkedBug: `UserStory/UserStoryApi/DeleteLinkedBug`,\r\n GetCompanySettingsDetails: `MasterData/MasterDataManagementApi/GetCompanySettingsDetails`,\r\n GetUserBranchDetails: `Branch/BranchApi/GetUserBranchDetails`,\r\n UpsertUserProfileDetails: `User/UsersApi/UpsertUserProfileDetails`,\r\n GetDocumentTemplates : `HrManagement/HrManagementApi/GetDocumentTemplates`,\r\n UpsertDocumentTemplate : `HrManagement/HrManagementApi/UpsertDocumentTemplate`,\r\n GenerateTemplateReport : `HrManagement/HrManagementApi/GenerateTemplateReport`,\r\n GetAssignmentWorkflow: `Training/TrainingCourseApi/GetAssignmentWorkflow`,\r\n GetRateTags: `PayRoll/PayRollApi/GetRateTags`,\r\n GetRateTagForNames: `PayRoll/PayRollApi/GetRateTagForNames`,\r\n UpsertRateTag: `PayRoll/PayRollApi/UpsertRateTag`,\r\n GetEmployeeRateTagDetails: `PayRoll/PayRollApi/GetEmployeeRateTagDetails`,\r\n InsertEmployeeRateTagDetails: `PayRoll/PayRollApi/InsertEmployeeRateTagDetails`,\r\n UpdateEmployeeRateTagDetails: `PayRoll/PayRollApi/UpdateEmployeeRateTagDetails`,\r\n SearchEmployeeRateTagDetails: `PayRoll/PayRollApi/SearchEmployeeRateTagDetails`,\r\n GetRateTagAllowanceTime: `PayRoll/PayRollApi/GetRateTagAllowanceTime`,\r\n UpsertRateTagAllowanceTime: `PayRoll/PayRollApi/UpsertRateTagAllowanceTime`,\r\n ExportSystemConfiguration : `Widgets/WidgetsApi/ExportSystemConfiguration`,\r\n ImportSystemConfiguration : \"Widgets/WidgetsApi/ImportSystemConfiguration\",\r\n CancelSubscription : \"Payments/PaymentsApi/CancelSubscription\",\r\n GetInvoiceDetails : \"Payments/PaymentsApi/GetInvoiceDetails\",\r\n GetActiveUsersCount : \"HrManagement/HrManagementApi/GetActiveUsersCount\",\r\n GetPurchasedLicensesCount : \"Payments/PaymentsApi/GetPurchasedLicencesCount\",\r\n GetPaymentHistory : \"Payments/PaymentsApi/GetPaymentHistory\",\r\n GetAllTransactionsDetails : \"Payments/PaymentsApi/GetAllTransactionDetails\",\r\n GetIntroDetails: `Intro/IntroApiController/GetIntro`\r\n}\r\n","export class CompaniesList{\r\n public companyId: string;\r\n public companyName:string;\r\n public authToken:string;\r\n public userId: string;\r\n public siteAddress: string;\r\n public companyMiniLogo: string;\r\n}\r\n","import { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { Observable } from 'rxjs';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { ApiUrls } from '../constants/api-urls';\r\nimport { CompaniesList } from '../models/companieslist.model';\r\n\r\n@Injectable({ providedIn: \"root\" })\r\n\r\nexport class AuthenticationService {\r\n constructor(private http: HttpClient, private cookieService: CookieService) { }\r\n\r\n login(username: string, password: string) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n var loginObj = {\r\n UserName: username,\r\n Password: password\r\n };\r\n const body = JSON.stringify(loginObj);\r\n return this.http.post<any>(APIEndpoint + ApiUrls.Authorize, body, httpOptions);\r\n }\r\n\r\n loginNewUser(username: string) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n return this.http.post<any>(APIEndpoint + 'api/LoginApi/AuthorizeNewUser', {\r\n UserName: username\r\n });\r\n }\r\n\r\n getThemes() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n var userId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n var theme = new CompaniesList();\r\n if (userId) {\r\n theme.userId = userId;\r\n }\r\n let body = JSON.stringify(theme);\r\n return this.http\r\n .post(APIEndpoint + ApiUrls.GetCompanyTheme, body, httpOptions)\r\n .pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n companyLogin(userDetails: CompaniesList) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n const body = JSON.stringify(userDetails);\r\n return this.http\r\n .post(APIEndpoint + ApiUrls.CompanyLogin, body, httpOptions)\r\n .pipe(\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getCompanyExistsOrNot() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n\r\n return this.http\r\n .get(APIEndpoint + ApiUrls.IsCompanyExists, httpOptions)\r\n .pipe(\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getTimeSheetEnabledInformation() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n return this.http.get<any>(\r\n APIEndpoint + 'Timesheet/TimesheetApi/GetEnableorDisableTimesheetButtons', httpOptions).pipe(\r\n map(data => {\r\n // this.timeSheetEnabledInformation.next(data);\r\n return data;\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { Observable } from 'rxjs';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { ApiUrls } from '../constants/api-urls';\r\nimport { UserModel } from '../models/user';\r\nimport { ProjectSearchCriteriaInputModel } from '../models/ProjectSearchCriteriaInputModel';\r\nimport { Project } from '../models/project';\r\nimport { WidgetList } from '../models/widgetlist';\r\nimport { WorkspaceList } from '../models/workspaceList';\r\nimport { EmployeeListModel } from '../models/employee';\r\nimport { StoreSearchModel } from '../models/store-search-model';\r\nimport { CompanyModel, CompanysettingsModel } from '../models/company-model';\r\nimport { SoftLabelConfigurationModel } from '../models/softlabels-model';\r\nimport { ExportConfigurationModel } from '../models/export-configuration-model';\r\nimport { ImportConfigurationModel } from '../models/import-configuration-model';\r\nimport { IntroModel } from \"../models/IntroModel\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\n\r\nexport class CommonService {\r\n constructor(private http: HttpClient, private cookieService: CookieService) { }\r\n\r\n getUserInitialData() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n return this.http.post(APIEndpoint + ApiUrls.GetUsersInitialData, httpOptions).pipe(\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getAddOrEditCustomAppIsRequired() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n return this.http.get(APIEndpoint + ApiUrls.GetAddOrEditCustomAppIsRequired, httpOptions)\r\n .pipe(map((result) => {\r\n return result;\r\n }));\r\n }\r\n\r\n companyLogin(userDetails: any) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n const body = JSON.stringify(userDetails);\r\n return this.http.post(APIEndpoint + ApiUrls.CompanyLogin, body, httpOptions).pipe(\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getActTrackerRecorder() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n return this.http.get(APIEndpoint + ApiUrls.GetActTrackerRecorder, httpOptions).pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getCompanyById(companyId: string) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n let paramsobj = new HttpParams().set('companyId', companyId);\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' }),\r\n params: paramsobj\r\n };\r\n\r\n return this.http.get(APIEndpoint + ApiUrls.GetCompanyById, httpOptions).pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n updateCompanyDetails(companyModel : CompanyModel ){\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n let body = JSON.stringify(companyModel);\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n return this.http.post(`${APIEndpoint + ApiUrls.UpsertCompanyDetails}`, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n getTimeSheetEnabledInformation() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n return this.http.get<any>(APIEndpoint + ApiUrls.GetEnableorDisableTimesheetButtons, httpOptions).pipe(\r\n map(data => {\r\n // this.timeSheetEnabledInformation.next(data);\r\n return data;\r\n })\r\n );\r\n }\r\n\r\n getUserById(userId: string) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n let paramsobj = new HttpParams().set('userId', userId);\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' }),\r\n params: paramsobj\r\n };\r\n return this.http.get<UserModel[]>(APIEndpoint + ApiUrls.GetUserById, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n searchProjects(projectSearchInput: ProjectSearchCriteriaInputModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n let body = JSON.stringify(projectSearchInput);\r\n return this.http.post<Project[]>(\r\n `${APIEndpoint + ApiUrls.SearchProjects}`,\r\n body,\r\n httpOptions\r\n );\r\n }\r\n\r\n GetWidgetsBasedOnUser(widget: WidgetList) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n\r\n const body = JSON.stringify(widget);\r\n\r\n return this.http.post(APIEndpoint + ApiUrls.GetWidgetsBasedOnUser, body, httpOptions);\r\n }\r\n\r\n GetWorkspaceList(workspace: WorkspaceList) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n\r\n const body = JSON.stringify(workspace);\r\n\r\n return this.http.post(APIEndpoint + ApiUrls.GetWorkspaces, body, httpOptions);\r\n }\r\n\r\n GetallRoles() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n\r\n var data = { RoleId: null, RoleName: null, Data: null, isArchived: false };\r\n let body = JSON.stringify(data);\r\n\r\n return this.http\r\n .post(APIEndpoint + ApiUrls.GetAllRoles, body, httpOptions)\r\n .pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getAllEmployees(employeeModel: EmployeeListModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n };\r\n let body = JSON.stringify(employeeModel);\r\n return this.http.post(APIEndpoint + ApiUrls.GetAllEmployees, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n getStores(storeSearchModel: StoreSearchModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n const body = JSON.stringify(storeSearchModel);\r\n return this.http.post(APIEndpoint + ApiUrls.GetStores, body, httpOptions)\r\n .pipe(map((result) => {\r\n return result;\r\n }));\r\n }\r\n\r\n getAllCompanySettingsDetails(companysettingModel: CompanysettingsModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n let body = JSON.stringify(companysettingModel);\r\n\r\n return this.http.post(APIEndpoint + ApiUrls.GetCompanySettingsDetails, body, httpOptions);\r\n }\r\n\r\n getLoggedInUser() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\"\r\n })\r\n };\r\n return this.http.get(APIEndpoint + ApiUrls.GetLoggedInUser, httpOptions).pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getCompanyWorkItemStartFunctionalityRequired() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\"\r\n })\r\n };\r\n return this.http.get(APIEndpoint + ApiUrls.GET_COMPANY_START_FUNCTIONALITY_ENABLED, httpOptions).pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getSoftLabels(softLabelModel: SoftLabelConfigurationModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n const body = JSON.stringify(softLabelModel);\r\n return this.http.post(APIEndpoint + ApiUrls.GetSoftLabelConfigurations, body, httpOptions)\r\n .pipe(map((result) => {\r\n return result;\r\n }));\r\n }\r\n\r\n GetExportData(exportConfigurationModel: ExportConfigurationModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n const body = JSON.stringify(exportConfigurationModel);\r\n return this.http.post(APIEndpoint + ApiUrls.ExportSystemConfiguration, body, httpOptions);\r\n }\r\n\r\n SystemImportConfiguration(importConfigurationModel: ImportConfigurationModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n const body = JSON.stringify(importConfigurationModel);\r\n return this.http.post(APIEndpoint + ApiUrls.ImportSystemConfiguration, body, httpOptions);\r\n }\r\n getIntroDetails(introModel : IntroModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n \r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Authorization': 'my-auth-token' }),\r\n };\r\n\r\n const body = JSON.stringify(introModel);\r\n return this.http.post<any[]>(APIEndpoint + ApiUrls.GetIntroDetails, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n getTeamLeadsList(model: any) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n let body = JSON.stringify(model);\r\n return this.http.post(`${APIEndpoint + ApiUrls.GetMyTeamMembersList}`, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n}","import { Guid } from \"guid-typescript\";\r\n\r\nexport class EntityRoleFeatureModel{\r\n entityRoleFeatureId: Guid;\r\n entityRoleId: Guid;\r\n entityFeatureId: Guid;\r\n projectId: string;\r\n entityRoleName: string;\r\n entityFeatureName: string;\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { EntityRoleFeatureModel } from '../models/entityRoleFeature';\r\nimport { Observable } from \"rxjs\";\r\nimport { UserModel } from '../models/user';\r\nimport { ApiUrls } from '../constants/api-urls';\r\nimport { UserNotificationReadModel } from '../models/NotificationsOutPutModel';\r\n\r\n@Injectable({ providedIn: \"root\" })\r\n\r\nexport class MenuItemService {\r\n constructor(private http: HttpClient) { }\r\n\r\n getAllApplicableMenuItems() {\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n };\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n return this.http.get<any>(APIEndpoint + ApiUrls.GetAllApplicableMenuItems, httpOptions);\r\n }\r\n\r\n getAllPermittedRoleFeatures() {\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n };\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n return this.http.get<any>(APIEndpoint + ApiUrls.GetAllPermittedRoleFeatures, httpOptions);\r\n }\r\n\r\n searchUsers(userModel: UserModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n }\r\n let body = JSON.stringify(userModel);\r\n return this.http.post(APIEndpoint + ApiUrls.GetAllUsers, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n getAllPermittedEntityRoleFeatures(projectId: string) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n var entityFeatureModel = new EntityRoleFeatureModel();\r\n entityFeatureModel.projectId = projectId;\r\n let body = JSON.stringify(entityFeatureModel);\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n };\r\n return this.http.post(APIEndpoint + ApiUrls.GetAllPermittedEntityRoleFeatures, body, httpOptions);\r\n }\r\n\r\n getAllPermittedEntityRoleFeaturesByUserId() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n var entityFeatureModel = new EntityRoleFeatureModel();\r\n let body = JSON.stringify(entityFeatureModel);\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n };\r\n return this.http.post(APIEndpoint + ApiUrls.GetAllEntityRoleFeaturesByUserId, body, httpOptions);\r\n }\r\n\r\n getAllNotifications(notificationsModel: any) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n let body = JSON.stringify(notificationsModel);\r\n return this.http.post(APIEndpoint + ApiUrls.GetNotifications, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n upsertNotificationReadStatus(upsertNotificationModel: UserNotificationReadModel[]) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n let body = JSON.stringify(upsertNotificationModel);\r\n return this.http.post(APIEndpoint + ApiUrls.UpsertNotificationReadStatus, body, httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n clearDemoData() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n };\r\n return this.http.post(APIEndpoint + ApiUrls.DeleteCompanyTestData, httpOptions);\r\n }\r\n}","import { Inject, Injectable } from \"@angular/core\";\r\nimport { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { Action } from \"@ngrx/store\";\r\nimport { Observable, of, pipe } from \"rxjs\";\r\nimport { catchError, map, switchMap, tap } from \"rxjs/operators\";\r\nimport {\r\n Authenticated,\r\n AuthenticateUser,\r\n AuthenticationActionTypes,\r\n CompanyWorkItemStartFunctionalityRequired,\r\n CompanyWorkItemStartFunctionalityRequiredSuccess,\r\n AuthenticationFailed,\r\n ClearDemoDataCompleted,\r\n ClearDemoDataFailed,\r\n ClearDemoDataTriggred,\r\n EntityReolesByUserIdFetchCompleted,\r\n EntityRoleDetailsFetched,\r\n EntityRolesByUserIdFetchFailed,\r\n EntityRolesByUserIdFetchTriggered,\r\n EntityRolesFetchTriggered,\r\n GetCompanyThemeCompleted,\r\n GetCompanyThemeFailed,\r\n GetCompanyThemeTriggered,\r\n InitializeAfterLoginData,\r\n RoleDetailsFetched,\r\n RoleDetailsFetchOnReload,\r\n RolesFetchFailed,\r\n SignedOff,\r\n UserDetailsFetching,\r\n UserDetailsFetched,\r\n GetUserStoreIdTriggered,\r\n GetUserStoreIdCompleted,\r\n GetUserStoreIdFailed,\r\n ExceptionHandled,\r\n AuthenticateNewUser,\r\n GetCompanySettingsTriggered,\r\n GetCompanySettingsCompleted,\r\n GetCompanySettingsFailed,\r\n UserDetailsFetchedAfterLogin,\r\n UserDetailsFetchedAfterCompanyLogin,\r\n UserInitialDetailsFetched,\r\n UserInitialDetailsFetchedCompleted,\r\n FetchTimeSheetButtonDetails\r\n} from \"../actions/authentication.actions\";\r\nimport { AuthenticationService } from \"../../services/authentication.service\";\r\nimport { MenuItemService } from \"../../services/feature.service\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { ShowExceptionMessages, ShowValidationMessages } from \"../actions/notification-validator.action\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { WINDOW } from '../../../globaldependencies/helpers/window.helper';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { CommonService } from '../../services/common-used.service';\r\nimport { CompanysettingsModel } from '../../models/company-model';\r\n\r\n/** @dynamic */\r\n\r\n@Injectable()\r\n\r\nexport class AuthenticationEffects {\r\n validationMessages: any[];\r\n goalId: string;\r\n userStoryId: string;\r\n sprintId: string;\r\n isSprintType: boolean;\r\n logInData: any;\r\n @Effect()\r\n authenticate$: Observable<Action> = this.actions$.pipe(\r\n ofType<AuthenticateUser>(AuthenticationActionTypes.AuthenticateUser),\r\n switchMap((action) => {\r\n return this.authenticationService\r\n .login(action.userName, action.password)\r\n .pipe(\r\n map((userToken: any) => {\r\n this.logInData = userToken.data;\r\n console.log(this.window.location.hostname);\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentUser, userToken.data.authToken, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n // this.cookieService.set(LocalStorageProperties.DefaultDashboard, JSON.stringify(userToken.data.defaultDashboardId), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyDetails, JSON.stringify(userToken.data.companyDetails), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n localStorage.setItem(LocalStorageProperties.RoleFeatures, JSON.stringify(userToken.data.roleFeatures));\r\n localStorage.setItem(LocalStorageProperties.SoftLabels, JSON.stringify(userToken.data.softLabels));\r\n this.cookieService.set(LocalStorageProperties.FromLogIn, JSON.stringify(true), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n // return new Authenticated(\r\n // action.userName,\r\n // JSON.stringify(userToken.data.authToken)\r\n // );\r\n this.cookieService.set(LocalStorageProperties.CurrentUserId, userToken.data.usersModel.id, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyName, userToken.data.usersModel.companyName, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyId, userToken.data.usersModel.companyId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n return new UserDetailsFetched(userToken.data.usersModel);\r\n }),\r\n catchError((error) => of(new AuthenticationFailed(error)))\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n authenticateNewUser$: Observable<Action> = this.actions$.pipe(\r\n ofType<AuthenticateNewUser>(AuthenticationActionTypes.AuthenticateNewUser),\r\n switchMap((action) => {\r\n return this.authenticationService\r\n .loginNewUser(action.userName)\r\n .pipe(\r\n map((userToken: any) => {\r\n this.logInData = userToken.data;\r\n console.log(this.window.location.hostname);\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentUser, userToken.data.authToken, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.DefaultDashboard, JSON.stringify(userToken.data.defaultDashboardId), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyDetails, JSON.stringify(userToken.data.companyDetails), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n localStorage.setItem(LocalStorageProperties.RoleFeatures, JSON.stringify(userToken.data.roleFeatures));\r\n localStorage.setItem(LocalStorageProperties.SoftLabels, JSON.stringify(userToken.data.softLabels));\r\n this.cookieService.set(LocalStorageProperties.FromLogIn, JSON.stringify(true), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n // return new Authenticated(\r\n // action.userName,\r\n // JSON.stringify(userToken.data.authToken)\r\n // );\r\n this.cookieService.set(LocalStorageProperties.CurrentUserId, userToken.data.usersModel.id, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyName, userToken.data.usersModel.companyName, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyId, userToken.data.usersModel.companyId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n return new UserDetailsFetched(userToken.data.usersModel);\r\n }),\r\n catchError((error) => of(new AuthenticationFailed(error)))\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n authenticated$: Observable<Action> = this.actions$.pipe(\r\n ofType<Authenticated>(AuthenticationActionTypes.Authenticated),\r\n switchMap((action) => {\r\n return this.userService.getLoggedInUser().pipe(\r\n map((userRecord: any) => {\r\n console.log(this.window.location.hostname);\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentUserId, userRecord.data.id, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyName, userRecord.data.companyName, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyId, userRecord.data.companyId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n return new UserDetailsFetched(userRecord.data);\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n companyWorkItemStartFunctionalityRequired$: Observable<Action> = this.actions$.pipe(\r\n ofType<CompanyWorkItemStartFunctionalityRequired>(AuthenticationActionTypes.CompanyWorkItemStartFunctionalityRequired),\r\n switchMap((action) => {\r\n return this.userService.getCompanyWorkItemStartFunctionalityRequired().pipe(\r\n map((record: any) => {\r\n console.log(this.window.location.hostname);\r\n return new CompanyWorkItemStartFunctionalityRequiredSuccess(record.data);\r\n })\r\n );\r\n })\r\n );\r\n \r\n\r\n // @Effect()\r\n // UserDetailsFetching$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetching>(AuthenticationActionTypes.UserDetailsFetching),\r\n // pipe(\r\n // map((action: any) => {\r\n // //var configurations = new SoftLabelConfigurationModel();\r\n // //return new GetsoftLabelsTriggered(configurations);\r\n // return new UserDetailsFetched(action.loginData.UsersModel);\r\n // })\r\n // )\r\n // );\r\n\r\n @Effect({ dispatch: false })\r\n authenticateSignedOff$: Observable<Action> = this.actions$.pipe(\r\n ofType<SignedOff>(AuthenticationActionTypes.SignedOff),\r\n tap((action) => {\r\n this.cookieService.delete(LocalStorageProperties.CurrentUser);\r\n })\r\n );\r\n\r\n @Effect()\r\n initializeRolesAfterLoginData$: Observable<Action> = this.actions$.pipe(\r\n ofType<UserDetailsFetched>(\r\n AuthenticationActionTypes.UserDetailsFetched\r\n ),\r\n pipe(\r\n map(() => {\r\n var roles = JSON.parse(localStorage.getItem(LocalStorageProperties.RoleFeatures));\r\n return new RoleDetailsFetched(roles);\r\n })\r\n )\r\n );\r\n\r\n // @Effect()\r\n // initializeSoftLabelsAfterLoginData$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetched>(\r\n // AuthenticationActionTypes.UserDetailsFetched\r\n // ),\r\n // pipe(\r\n // map(() => {\r\n // var softLabels = JSON.parse(localStorage.getItem(LocalStorageProperties.SoftLabels));\r\n // return new GetsoftLabelsCompleted(softLabels);\r\n // })\r\n // )\r\n // );\r\n\r\n @Effect()\r\n initializeRolesAfterLoginDataForUser$: Observable<Action> = this.actions$.pipe(\r\n ofType<UserDetailsFetchedAfterLogin>(\r\n AuthenticationActionTypes.UserDetailsFetchedAfterLogin\r\n ),\r\n pipe(\r\n map(() => {\r\n var roles = JSON.parse(localStorage.getItem(LocalStorageProperties.RoleFeatures));\r\n return new RoleDetailsFetched(roles);\r\n })\r\n )\r\n );\r\n\r\n\r\n @Effect()\r\n initializeLoginDataForUserCompany$: Observable<Action> = this.actions$.pipe(\r\n ofType<UserDetailsFetchedAfterCompanyLogin>(\r\n AuthenticationActionTypes.UserDetailsFetchedAfterCompanyLogin\r\n ),\r\n pipe(\r\n map((action) => {\r\n return new UserDetailsFetchedAfterLogin(action.userModel);\r\n })\r\n )\r\n );\r\n \r\n @Effect()\r\n initializeLoginDataForUser$: Observable<Action> = this.actions$.pipe(\r\n ofType<UserDetailsFetchedAfterLogin>(\r\n AuthenticationActionTypes.UserDetailsFetchedAfterLogin\r\n ),\r\n switchMap(() => {\r\n return this.commonService.getUserInitialData()\r\n .pipe(map((res: any) => {\r\n console.log(res.data);\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let data = res.data;\r\n localStorage.setItem(LocalStorageProperties.UserRoleFeatures, JSON.stringify(data.entityFeatures));\r\n this.cookieService.set(LocalStorageProperties.AddOrEditCustomAppIsRequired, data.addOrEditCustomAppIsRequired, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n return new UserInitialDetailsFetchedCompleted(res.data.timeSheetButtonDetails);\r\n })\r\n )\r\n })\r\n );\r\n\r\n @Effect()\r\n fetchUserTimeSheetButtonDetails$: Observable<Action> = this.actions$.pipe(\r\n ofType<FetchTimeSheetButtonDetails>(\r\n AuthenticationActionTypes.FetchTimeSheetButtonDetails\r\n ),\r\n switchMap(() => {\r\n return this.commonService.getTimeSheetEnabledInformation()\r\n .pipe(map((res: any) => {\r\n return new UserInitialDetailsFetchedCompleted(res);\r\n })\r\n )\r\n })\r\n );\r\n\r\n // @Effect()\r\n // initializeCompanySettingsLoginDataForUserCompleted: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserInitialDetailsFetchedCompleted>(\r\n // AuthenticationActionTypes.UserInitialDetailsFetchedCompleted\r\n // ),\r\n // pipe(\r\n // map((res: any) => {\r\n // return new GetCompanySettingsCompleted(res.companySettings);\r\n // })\r\n // )\r\n // );\r\n\r\n // @Effect()\r\n // initializeEntityRoleFeaturesLoginDataForUserCompleted: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserInitialDetailsFetchedCompleted>(\r\n // AuthenticationActionTypes.UserInitialDetailsFetchedCompleted\r\n // ),\r\n // pipe(\r\n // map((res: any) => {\r\n // return new EntityReolesByUserIdFetchCompleted(res.entityFeatures);\r\n // })\r\n // )\r\n // );\r\n\r\n\r\n // @Effect()\r\n // initializeSoftLabelsAfterLoginDataForUser$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetchedAfterLogin>(\r\n // AuthenticationActionTypes.UserDetailsFetchedAfterLogin\r\n // ),\r\n // pipe(\r\n // map(() => {\r\n // var softLabels = JSON.parse(localStorage.getItem(LocalStorageProperties.SoftLabels));\r\n // return new GetsoftLabelsCompleted(softLabels);\r\n // })\r\n // )\r\n // );\r\n\r\n // @Effect()\r\n // initializeAfterGettingSoftLabels$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetched>(\r\n // AuthenticationActionTypes.UserDetailsFetched\r\n // ),\r\n // pipe(\r\n // map((action: any) => { \r\n // var fromLogIn = JSON.parse(localStorage.getItem('FromLogIn'));\r\n // if(fromLogIn) {\r\n // return new GetsoftLabelsCompleted(this.logInData.softLabels);\r\n // } else {\r\n // var configurations = new SoftLabelConfigurationModel();\r\n // return new GetsoftLabelsTriggered(configurations);\r\n // } \r\n // })\r\n // )\r\n // );\r\n\r\n // @Effect()\r\n // initializeAfterGettingRoleFeatures$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetching>(\r\n // AuthenticationActionTypes.UserDetailsFetched\r\n // ),\r\n // pipe(\r\n // map((action: any) => {\r\n // // var roles = localStorage.getItem('Roles');\r\n // var fromLogIn = JSON.parse(localStorage.getItem('FromLogIn'));\r\n // if(fromLogIn) {\r\n // return new RoleDetailsFetched(this.logInData.roleFeatures);\r\n // } else {\r\n // return new RoleDetailsFetchOnReload();\r\n // }\r\n // })\r\n // )\r\n // );\r\n\r\n // @Effect()\r\n // initializeThemeAfterLogin$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetched>(\r\n // AuthenticationActionTypes.UserDetailsFetched\r\n // ),\r\n // pipe(\r\n // map(() => {\r\n // return new GetCompanyThemeTriggered();\r\n // })\r\n // )\r\n // );\r\n\r\n @Effect()\r\n gettingRoleDetailsAfterInitializeLoginData$: Observable<Action> = this.actions$.pipe(\r\n ofType<EntityRolesFetchTriggered>(\r\n AuthenticationActionTypes.EntityRolesFetchTriggered\r\n ),\r\n switchMap((action) => {\r\n return this.featureService.getAllPermittedEntityRoleFeatures(action.projectId).pipe(\r\n map((roleFeatures: any) => {\r\n if (roleFeatures.success) {\r\n localStorage.setItem(LocalStorageProperties.EntityRoleFeatures, JSON.stringify(roleFeatures.data));\r\n return new EntityRoleDetailsFetched(roleFeatures.data);\r\n } else {\r\n this.validationMessages = roleFeatures.apiResponseMessages;\r\n return new RolesFetchFailed(roleFeatures.apiResponseMessages);\r\n }\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n companySettingsTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<UserDetailsFetched>(\r\n AuthenticationActionTypes.UserDetailsFetched\r\n ),\r\n pipe(\r\n map(() => {\r\n var companySettingsModel = new CompanysettingsModel();\r\n companySettingsModel.isArchived = false;\r\n return new GetCompanySettingsTriggered(companySettingsModel);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n entityRolesTRiggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<UserDetailsFetched>(\r\n AuthenticationActionTypes.UserDetailsFetched\r\n ),\r\n pipe(\r\n map(() => {\r\n return new EntityRolesByUserIdFetchTriggered(\"null\", \"null\", false);\r\n })\r\n )\r\n );\r\n\r\n // @Effect()\r\n // companySettingsTriggeredAfterLogin$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetchedAfterLogin>(\r\n // AuthenticationActionTypes.UserDetailsFetchedAfterLogin\r\n // ),\r\n // pipe(\r\n // map(() => {\r\n // var companySettingsModel = new CompanysettingsModel();\r\n // companySettingsModel.isArchived = false;\r\n // return new GetCompanySettingsTriggered(companySettingsModel);\r\n // })\r\n // )\r\n // );\r\n\r\n // @Effect()\r\n // entityRolesTRiggeredAfterLogin$: Observable<Action> = this.actions$.pipe(\r\n // ofType<UserDetailsFetchedAfterLogin>(\r\n // AuthenticationActionTypes.UserDetailsFetchedAfterLogin\r\n // ),\r\n // pipe(\r\n // map(() => {\r\n // return new EntityRolesByUserIdFetchTriggered(\"null\", \"null\", false);\r\n // })\r\n // )\r\n // );\r\n\r\n @Effect()\r\n loadCompanySettings$: Observable<Action> = this.actions$.pipe(\r\n ofType<GetCompanySettingsTriggered>(\r\n AuthenticationActionTypes.GetCompanySettingsTriggered\r\n ),\r\n switchMap((action) => {\r\n return this.userService.getAllCompanySettingsDetails(action.companySettingsModel).pipe(\r\n map((roleFeatures: any) => {\r\n if (roleFeatures.success) {\r\n localStorage.setItem(LocalStorageProperties.CompanySettings, JSON.stringify(roleFeatures.data));\r\n return new GetCompanySettingsCompleted(roleFeatures.data);\r\n } else {\r\n return new GetCompanySettingsFailed(roleFeatures.apiResponseMessages);\r\n }\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n gettingRoleDetailsByUserIdAfterInitializeLoginData$: Observable<Action> = this.actions$.pipe(\r\n ofType<EntityRolesByUserIdFetchTriggered>(\r\n AuthenticationActionTypes.EntityRolesByUserIdFetchTriggered\r\n ),\r\n switchMap(action => {\r\n if (action.requiredType == 'goal') {\r\n this.goalId = action.projectId;\r\n this.userStoryId = null;\r\n this.sprintId = null;\r\n }\r\n else if (action.requiredType == 'userStory') {\r\n this.userStoryId = action.projectId;\r\n this.goalId = null;\r\n this.sprintId = null;\r\n } else if (action.requiredType == 'sprint') {\r\n this.sprintId = action.projectId;\r\n this.goalId = null;\r\n this.userStoryId = null;\r\n }\r\n else {\r\n this.userStoryId = null;\r\n this.goalId = null;\r\n this.sprintId = null;\r\n }\r\n this.isSprintType = action.isSprintType;\r\n return this.featureService.getAllPermittedEntityRoleFeaturesByUserId().pipe(\r\n map((roleFeatures: any) => {\r\n if (roleFeatures.success) {\r\n localStorage.setItem(LocalStorageProperties.UserRoleFeatures, JSON.stringify(roleFeatures.data));\r\n return new EntityReolesByUserIdFetchCompleted(roleFeatures.data);\r\n } else {\r\n this.validationMessages = roleFeatures.apiResponseMessages;\r\n return new EntityRolesByUserIdFetchFailed(roleFeatures.apiResponseMessages);\r\n }\r\n }),\r\n catchError(err => {\r\n return of(new ExceptionHandled(err));\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n initializeAfterLoginData2$: Observable<Action> = this.actions$.pipe(\r\n ofType<InitializeAfterLoginData>(\r\n AuthenticationActionTypes.InitializeAfterLoginData\r\n ),\r\n switchMap((action) => {\r\n return this.userService.getLoggedInUser().pipe(\r\n map((userRecord: any) => {\r\n console.log(this.window.location.hostname);\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentUserId, userRecord.data.id, null,\r\n environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyName, userRecord.data.companyName, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyId, userRecord.data.companyId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n return new UserDetailsFetched(userRecord.data);\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n showValidationMessagesFoRoleFeatures$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<RolesFetchFailed>(\r\n AuthenticationActionTypes.RolesFetchFailed\r\n ),\r\n pipe(\r\n map(\r\n () => {\r\n for (let i = 0; i < this.validationMessages.length; i++) {\r\n return new ShowExceptionMessages({\r\n message: this.validationMessages[i].message // TODO: Change to proper toast message\r\n })\r\n }\r\n }\r\n\r\n )\r\n )\r\n );\r\n\r\n @Effect()\r\n showValidationMessagesForEntityRoles$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<EntityRolesByUserIdFetchFailed>(\r\n AuthenticationActionTypes.EntityRolesByUserIdFetchFailed\r\n ),\r\n switchMap((searchAction) => {\r\n return of(new ShowValidationMessages({\r\n validationMessages: searchAction.validationMessages\r\n })\r\n )\r\n })\r\n );\r\n\r\n @Effect()\r\n showValidationMessagesForCompanySettings$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<GetCompanySettingsFailed>(\r\n AuthenticationActionTypes.GetCompanySettingsFailed\r\n ),\r\n switchMap((searchAction) => {\r\n return of(new ShowValidationMessages({\r\n validationMessages: searchAction.validationMessages\r\n })\r\n )\r\n })\r\n );\r\n\r\n @Effect()\r\n demoDataClearEventTriggred$: Observable<Action> = this.actions$.pipe(\r\n ofType<ClearDemoDataTriggred>(\r\n AuthenticationActionTypes.ClearDemoDataTriggred\r\n ),\r\n switchMap((action) => {\r\n return this.featureService.clearDemoData().pipe(\r\n map((response: any) => {\r\n if (response.success) {\r\n this.toastr.success(\"Demo data cleared successfully\");\r\n return new ClearDemoDataCompleted(response.data);\r\n } else {\r\n this.validationMessages = response.apiResponseMessages;\r\n this.toastr.error(this.validationMessages[0].message);\r\n return new ClearDemoDataFailed(response.apiResponseMessages);\r\n }\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n getThemeColor$: Observable<Action> = this.actions$.pipe(\r\n ofType<GetCompanyThemeTriggered>(\r\n AuthenticationActionTypes.GetCompanyThemeTriggered,\r\n ),\r\n switchMap(action => {\r\n return this.authenticationService.getThemes().pipe(\r\n map((response: any) => {\r\n if (response.success) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CompanyTheme, JSON.stringify(response.data), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n return new GetCompanyThemeCompleted(response.data);\r\n }\r\n else {\r\n return new GetCompanyThemeFailed(response.apiResponseMessages);\r\n }\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n demoDataClearEventSuccessful$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<ClearDemoDataCompleted>(\r\n AuthenticationActionTypes.ClearDemoDataCompleted\r\n ),\r\n pipe(\r\n map(() => {\r\n return new InitializeAfterLoginData();\r\n })\r\n )\r\n );\r\n\r\n // @Effect()\r\n // loadGoalAndUserStoryData$: Observable<\r\n // Action\r\n // > = this.actions$.pipe(\r\n // ofType<EntityReolesByUserIdFetchCompleted>(\r\n // AuthenticationActionTypes.EntityReolesByUserIdFetchCompleted\r\n // ),\r\n // pipe(\r\n // map(() => {\r\n // if (this.goalId) {\r\n // return new GetUniqueGoalByIdTriggered(this.goalId);\r\n // }\r\n // else if (this.userStoryId) {\r\n // if (this.isSprintType) {\r\n // return new GetUniqueSprintWorkItemByIdTriggered(this.userStoryId);\r\n // } else {\r\n // return new GetUniqueUserStoryByIdTriggered(this.userStoryId);\r\n // }\r\n // } else if (this.sprintId) {\r\n // return new GetUniqueSprintsByIdTriggered(this.sprintId);\r\n // }\r\n // else {\r\n // return new ArchiveUnArchiveGoalCompleted();\r\n // }\r\n\r\n // })\r\n // )\r\n // );\r\n\r\n @Effect()\r\n getUserStoreIdDetails$: Observable<Action> = this.actions$.pipe(\r\n ofType<GetUserStoreIdTriggered>(AuthenticationActionTypes.GetUserStoreIdTriggered),\r\n switchMap(searchAction => {\r\n return this.userService\r\n .getStores(searchAction.searchUserStoreDetailsModel)\r\n .pipe(map((storeData: any) => {\r\n if (storeData.success === true)\r\n return new GetUserStoreIdCompleted(storeData.data[0]);\r\n else\r\n return new GetUserStoreIdFailed(storeData.apiResponseMessages);\r\n }),\r\n catchError(error => {\r\n return of(new ExceptionHandled(error));\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n showValidationMessagesForGetUserStoreId$: Observable<Action> = this.actions$.pipe(\r\n ofType<GetUserStoreIdFailed>(AuthenticationActionTypes.GetUserStoreIdFailed),\r\n switchMap(searchAction => {\r\n return of(new ShowValidationMessages({\r\n validationMessages: searchAction.validationMessages,\r\n })\r\n )\r\n })\r\n );\r\n\r\n @Effect()\r\n exceptionHandled$: Observable<Action> = this.actions$.pipe(\r\n ofType<ExceptionHandled>(AuthenticationActionTypes.ExceptionHandled),\r\n switchMap(searchAction => {\r\n return of(new ShowExceptionMessages({\r\n message: searchAction.errorMessage, // TODO: Change to proper toast message\r\n })\r\n )\r\n })\r\n );\r\n\r\n constructor(\r\n private actions$: Actions,\r\n private authenticationService: AuthenticationService,\r\n private userService: CommonService,\r\n private commonService: CommonService,\r\n private featureService: MenuItemService,\r\n private cookieService: CookieService,\r\n private toastr: ToastrService,\r\n @Inject(WINDOW) private window: Window\r\n ) { }\r\n}\r\n","import { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable, of } from \"rxjs\";\r\nimport { Action, Store, select } from \"@ngrx/store\";\r\nimport { switchMap, map, catchError, withLatestFrom } from \"rxjs/operators\";\r\nimport {\r\n GetAllMenuItemsCompleted,\r\n GetAllMenuItemsTriggered,\r\n MenuItemActionTypes,\r\n GetAllMenuItemsFailed,\r\n ExceptionHandled\r\n} from \"../actions/menuitems.actions\";\r\nimport * as sharedReducers from \"../reducers/index\";\r\nimport { State } from \"../reducers/index\";\r\nimport { MenuItemService } from \"../../services/feature.service\";\r\nimport { ShowValidationMessages, ShowExceptionMessages } from \"../actions/notification-validator.action\";\r\n\r\n@Injectable()\r\nexport class MenuItemsEffects {\r\n @Effect()\r\n authenticate$: Observable<Action> = this.actions$.pipe(\r\n ofType<GetAllMenuItemsTriggered>(\r\n MenuItemActionTypes.GetAllMenuItemsTriggered\r\n ),\r\n switchMap(action => {\r\n return this.menuItemService.getAllApplicableMenuItems().pipe(\r\n map((allMenuItemModels: any) => {\r\n if(allMenuItemModels.success){\r\n return new GetAllMenuItemsCompleted(allMenuItemModels.data);\r\n }\r\n else{\r\n return new GetAllMenuItemsFailed(allMenuItemModels.apiResponseMessages);\r\n }\r\n }),\r\n catchError(error => of(new ExceptionHandled(error)))\r\n );\r\n })\r\n );\r\n\r\n \r\n @Effect()\r\n showValidationMessagesForMenuItems$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<GetAllMenuItemsFailed>(\r\n MenuItemActionTypes.GetAllMenuItemsFailed\r\n ),\r\n switchMap(searchAction => {\r\n return of(new ShowValidationMessages({\r\n validationMessages: searchAction.validationMessages,\r\n })\r\n )\r\n })\r\n );\r\n\r\n\r\n @Effect()\r\n exceptionHandled$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<ExceptionHandled>(\r\n MenuItemActionTypes.ExceptionHandled\r\n ),\r\n switchMap(searchAction => {\r\n return of(new ShowExceptionMessages({\r\n message: searchAction.errorMessage, // TODO: Change to proper toast message\r\n })\r\n )\r\n })\r\n );\r\n\r\n\r\n\r\n constructor(\r\n private actions$: Actions,\r\n private menuItemService: MenuItemService,\r\n private store$: Store<State>\r\n ) {}\r\n}\r\n","import { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable, pipe, of } from \"rxjs\";\r\nimport { Action } from \"@ngrx/store\";\r\nimport { switchMap, map, catchError } from \"rxjs/operators\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { ClearAllUnreadNotificationsTriggered, NotificationsActionTypes, ClearAllUnreadNotificationsCompleted, ClearAllUnreadNotificationsFailed, ExceptionHandled, UpsertUnreadNotificationsTriggered, UpsertUnreadNotificationsCompleted, UpsertUnreadNotificationsFailed, ClearAllNotifications, ClearUnreadNotificationsTriggered } from \"../actions/notifications.actions\";\r\nimport { MenuItemService } from \"../../services/feature.service\";\r\nimport { ShowValidationMessages, ShowExceptionMessages } from \"../actions/notification-validator.action\";\r\n\r\n@Injectable()\r\nexport class NotificationEffect {\r\n validationMessages: any[];\r\n exceptionMessage: any;\r\n\r\n @Effect()\r\n loadNotifications$: Observable<Action> = this.actions$.pipe(\r\n ofType<ClearAllUnreadNotificationsTriggered>(NotificationsActionTypes.ClearAllUnreadNotificationsTriggered),\r\n switchMap(searchAction => {\r\n {\r\n return this.menuItemService.getAllNotifications(searchAction.notification)\r\n .pipe(\r\n map((notifications: any) => {\r\n if (notifications.success) {\r\n return new ClearAllUnreadNotificationsCompleted(notifications.data)\r\n }\r\n else {\r\n return new ClearAllUnreadNotificationsFailed(notifications.apiResponseMessages);\r\n }\r\n }),\r\n catchError(err => {\r\n return of(new ExceptionHandled(err));\r\n })\r\n );\r\n }\r\n })\r\n );\r\n\r\n @Effect()\r\n loadAllNotifications$: Observable<Action> = this.actions$.pipe(\r\n ofType<ClearUnreadNotificationsTriggered>(NotificationsActionTypes.ClearUnreadNotificationsTriggered),\r\n switchMap(searchAction => {\r\n {\r\n return this.menuItemService.getAllNotifications(searchAction.notification)\r\n .pipe(\r\n map((notifications: any) => {\r\n if (notifications.success) {\r\n return new ClearAllUnreadNotificationsCompleted(notifications.data)\r\n }\r\n else {\r\n return new ClearAllUnreadNotificationsFailed(notifications.apiResponseMessages);\r\n }\r\n }),\r\n catchError(err => {\r\n return of(new ExceptionHandled(err));\r\n })\r\n );\r\n }\r\n })\r\n );\r\n\r\n\r\n @Effect()\r\n showValidationMessagesForProjectList$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<ClearAllUnreadNotificationsFailed>(\r\n NotificationsActionTypes.ClearAllUnreadNotificationsFailed\r\n ),\r\n switchMap(searchAction => {\r\n return of(new ShowValidationMessages({\r\n validationMessages: searchAction.validationMessages,\r\n })\r\n )\r\n })\r\n );\r\n\r\n\r\n @Effect()\r\n exceptionHandled$: Observable<\r\n Action\r\n > = this.actions$.pipe(\r\n ofType<ExceptionHandled>(\r\n NotificationsActionTypes.ExceptionHandled\r\n ),\r\n switchMap(searchAction => {\r\n return of(new ShowExceptionMessages({\r\n message: searchAction.errorMessage, // TODO: Change to proper toast message\r\n })\r\n )\r\n })\r\n );\r\n\r\n @Effect()\r\n UpsertUnreadNotifications$: Observable<Action> = this.actions$.pipe(\r\n ofType<UpsertUnreadNotificationsTriggered>(NotificationsActionTypes.UpsertUnreadNotificationsTriggered),\r\n switchMap(UpsertReadNotificationsTriggeredAction => {\r\n return this.menuItemService\r\n .upsertNotificationReadStatus(UpsertReadNotificationsTriggeredAction.upsertNotification)\r\n .pipe(\r\n map((notificationId: any) => {\r\n return new UpsertUnreadNotificationsCompleted(UpsertReadNotificationsTriggeredAction.upsertNotification[0].notificationId);\r\n }),\r\n catchError(error => {\r\n this.exceptionMessage = error;\r\n return of(new ExceptionHandled(error));\r\n })\r\n );\r\n })\r\n );\r\n\r\n @Effect()\r\n showValidationMessagesForCanteenFoodItem$: Observable<Action> = this.actions$.pipe(\r\n ofType<UpsertUnreadNotificationsFailed>(NotificationsActionTypes.UpsertUnreadNotificationsFailed),\r\n pipe(\r\n map(() => {\r\n return new ShowValidationMessages({\r\n validationMessages: this.validationMessages, // TODO: Change to proper toast message\r\n })\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n ClearAllUnreadNotifications$: Observable<Action> = this.actions$.pipe(\r\n ofType<ClearAllNotifications>(NotificationsActionTypes.ClearAllNotifications),\r\n switchMap(UpsertReadNotificationsTriggeredAction => {\r\n return this.menuItemService\r\n .upsertNotificationReadStatus(UpsertReadNotificationsTriggeredAction.readNotifications)\r\n .pipe(\r\n map((notificationId: any) => {\r\n if (notificationId.success === true) {\r\n return new UpsertUnreadNotificationsCompleted(UpsertReadNotificationsTriggeredAction.readNotifications[0].notificationId);\r\n } else {\r\n this.validationMessages = notificationId.apiResponseMessages\r\n return new UpsertUnreadNotificationsFailed(notificationId.apiResponseMessages);\r\n }\r\n }),\r\n catchError(error => {\r\n this.exceptionMessage = error;\r\n return of(new ExceptionHandled(error));\r\n })\r\n );\r\n })\r\n );\r\n\r\n\r\n constructor(\r\n private actions$: Actions,\r\n private menuItemService: MenuItemService,\r\n private translateService: TranslateService\r\n ) { }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Actions, Effect } from \"@ngrx/effects\";\r\nimport { Observable } from \"rxjs\";\r\nimport { delay, map, tap } from \"rxjs/operators\";\r\nimport { ValidationActionTypes, ShowExceptionMessages, ShowValidationMessages } from \"../actions/notification-validator.action\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { Store, select } from \"@ngrx/store\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport { SoftLabelPipe } from '../../../globaldependencies/pipes/softlabels.pipes';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { SoftLabelConfigurationModel } from '../../models/softlabels-model';\r\n\r\n@Injectable()\r\nexport class NotificationValidatorEffects {\r\n softLabels$: Observable<SoftLabelConfigurationModel[]>;\r\n softLabel: SoftLabelConfigurationModel[];\r\n\r\n @Effect({ dispatch: false })\r\n showException: Observable<any> = this.actions\r\n .ofType<ShowExceptionMessages>(ValidationActionTypes.ShowExceptionMessages)\r\n .pipe(\r\n map((action: ShowExceptionMessages) => action.payload),\r\n tap(payload => {\r\n if (payload != null && payload.message != null) {\r\n if ((typeof (payload.message)) === 'string') {\r\n if (payload.message.indexOf('401').valueOf() < 0)\r\n this.toastr.error(\"\", payload.message)\r\n }\r\n\r\n if ((typeof (payload.message)) === 'object') {\r\n if (payload.message.status != 401)\r\n this.toastr.error(\"\", payload.message.message)\r\n }\r\n }\r\n }\r\n ),\r\n );\r\n\r\n @Effect({ dispatch: false })\r\n showValidation: Observable<any> = this.actions\r\n .ofType<ShowValidationMessages>(ValidationActionTypes.ShowValidationMessages)\r\n .pipe(\r\n map((action: ShowValidationMessages) => action.payload.validationMessages),\r\n tap(validationMessages => {\r\n if (validationMessages != null) {\r\n validationMessages.forEach(value => {\r\n let message = this.softLabelPipe.transform(value.message, this.softLabel);\r\n this.toastr.error(\"\", message)\r\n });\r\n }\r\n }\r\n ),\r\n );\r\n\r\n constructor(private actions: Actions, private toastr: ToastrService, private store: Store<State>, private softLabelPipe: SoftLabelPipe) {\r\n this.softLabel = JSON.parse(localStorage.getItem(LocalStorageProperties.SoftLabels))\r\n }\r\n}","import {\r\n MessageTriggered,\r\n MessageCompleted,\r\n MessageFailed,\r\n ReceiveMessageTriggered,\r\n ReceiveMessageCompleted,\r\n ReceiveMessageFailed,\r\n PresenceEventTriggered,\r\n PresenceEventCompleted,\r\n PresenceEventFailed,\r\n CountCompleted,\r\n CountFailed,\r\n CountTriggered,\r\n InitalStateOfUsersTriggered,\r\n InitalStateOfUsersFailed,\r\n InitalStateOfUsersCompleted,\r\n RequestingStateOfUsersTriggered,\r\n RequestingStateOfUsersCompleted,\r\n RequestingStateOfUsersFailed,\r\n MessageActionTypes,\r\n SendChannelUpdateModelTriggered,\r\n SendChannelUpdateModelFailed,\r\n SendChannelUpdateModelCompleted,\r\n ReceiveChannelUpdateModelTriggered,\r\n ReceiveChannelUpdateModelFailed,\r\n ReceiveChannelUpdateModelCompleted,\r\n SendingSignalTriggered,\r\n SendingSignalCompleted,\r\n SendingSignalFailed,\r\n ReceiveSignalFailed,\r\n ReceiveSignalCompleted,\r\n ReceiveSignalTriggered\r\n} from \"../actions/chat.actions\"\r\nimport { Action } from \"@ngrx/store\";\r\nimport { Observable, pipe } from \"rxjs\";\r\nimport { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\n\r\nexport class MessageEffects {\r\n\r\n @Effect()\r\n MessageTrigged$: Observable<Action> = this.actions$.pipe(\r\n ofType<MessageTriggered>(MessageActionTypes.MessageTriggered),\r\n pipe(\r\n map((action) => {\r\n return new MessageCompleted(action.messageDetails);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n MessageFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<MessageFailed>(MessageActionTypes.MessageFailed),\r\n pipe(\r\n map((action) => {\r\n return new MessageFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n ReceiveMessageTrigged$: Observable<Action> = this.actions$.pipe(\r\n ofType<ReceiveMessageTriggered>(MessageActionTypes.ReceiveMessageTriggered),\r\n pipe(\r\n map((action) => {\r\n return new ReceiveMessageCompleted(action.messageDetails);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n ReceiveMessageFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<MessageFailed>(MessageActionTypes.ReceiveMessageFailed),\r\n pipe(\r\n map((action) => {\r\n return new ReceiveMessageFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n PresenceEventTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<PresenceEventTriggered>(MessageActionTypes.PresenceEventTriggered),\r\n pipe(\r\n map((action) => {\r\n return new PresenceEventCompleted(action.employeeStatusModel);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n PresenceEventFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<PresenceEventFailed>(MessageActionTypes.PresenceEventFailed),\r\n pipe(\r\n map((action) => {\r\n return new PresenceEventFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n @Effect()\r\n CountTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<CountTriggered>(MessageActionTypes.CountTriggered),\r\n pipe(\r\n map((action) => {\r\n return new CountCompleted(action.messageCount);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n CountFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<CountFailed>(MessageActionTypes.CountFailed),\r\n pipe(\r\n map((action) => {\r\n return new CountFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n InitalStateOfUsersTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<InitalStateOfUsersTriggered>(MessageActionTypes.InitalStateOfUsersTriggered),\r\n pipe(\r\n map((action) => {\r\n return new InitalStateOfUsersCompleted(action.initialStatusOfUsers);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n InitalStateOfUsersFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<InitalStateOfUsersFailed>(MessageActionTypes.InitalStateOfUsersFailed),\r\n pipe(\r\n map((action) => {\r\n return new InitalStateOfUsersFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n @Effect()\r\n RequestingStateOfUsersTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<RequestingStateOfUsersTriggered>(MessageActionTypes.RequestingStateOfUsersTriggered),\r\n pipe(\r\n map((action) => {\r\n return new RequestingStateOfUsersCompleted(action.gotColleagues);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n RequestingStateOfUsersFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<RequestingStateOfUsersFailed>(MessageActionTypes.RequestingStateOfUsersFailed),\r\n pipe(\r\n map((action) => {\r\n return new RequestingStateOfUsersFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n @Effect()\r\n SendChannelUpdateModelTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<SendChannelUpdateModelTriggered>(MessageActionTypes.SendChannelUpdateModelTriggered),\r\n pipe(\r\n map((action) => {\r\n return new SendChannelUpdateModelCompleted(action.channelUpdateModel);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n SendChannelUpdateModelFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<SendChannelUpdateModelFailed>(MessageActionTypes.SendChannelUpdateModelFailed),\r\n pipe(\r\n map((action) => {\r\n return new SendChannelUpdateModelFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n @Effect()\r\n ReceiveChannelUpdateModelTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<ReceiveChannelUpdateModelTriggered>(MessageActionTypes.ReceiveChannelUpdateModelTriggered),\r\n pipe(\r\n map((action) => {\r\n return new ReceiveChannelUpdateModelCompleted(action.channelUpdateModel);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n ReceiveChannelUpdateModelFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType<ReceiveChannelUpdateModelFailed>(MessageActionTypes.ReceiveChannelUpdateModelFailed),\r\n pipe(\r\n map((action) => {\r\n return new ReceiveChannelUpdateModelFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n @Effect()\r\n SendingSignalTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType<SendingSignalTriggered>(MessageActionTypes.SendingSignalTriggered),\r\n pipe(\r\n map((action) => {\r\n return new SendingSignalCompleted(action.messageTypingDetails);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n SendingSignalFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType< SendingSignalFailed>(MessageActionTypes. SendingSignalFailed),\r\n pipe(\r\n map((action) => {\r\n return new SendingSignalFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n @Effect()\r\n ReceiveSignalTriggered$: Observable<Action> = this.actions$.pipe(\r\n ofType< ReceiveSignalTriggered>(MessageActionTypes. ReceiveSignalTriggered),\r\n pipe(\r\n map((action) => {\r\n return new ReceiveSignalCompleted(action.messageTypingDetails);\r\n })\r\n )\r\n );\r\n\r\n @Effect()\r\n ReceiveSignalFailed$: Observable<Action> = this.actions$.pipe(\r\n ofType< ReceiveSignalFailed>(MessageActionTypes. ReceiveSignalFailed),\r\n pipe(\r\n map((action) => {\r\n return new ReceiveSignalFailed(action.errorMessage);\r\n })\r\n )\r\n );\r\n constructor(private actions$: Actions) {\r\n }\r\n}","import * as fromAuthentication from \"./authentication.effects\";\r\nimport * as fromMenuItems from \"./menuitems.effects\";\r\nimport * as fromNotifications from \"./notifications.effects\";\r\nimport * as fromNotificationValidator from \"./notification-validator.effects\";\r\nimport * as fromChatEffects from \"./chat.effects\"\r\n\r\nexport const allSharedModuleEffects: any = [\r\n fromAuthentication.AuthenticationEffects,\r\n fromMenuItems.MenuItemsEffects,\r\n fromNotifications.NotificationEffect,\r\n fromNotificationValidator.NotificationValidatorEffects,\r\n fromChatEffects.MessageEffects\r\n];\r\n","export class SoftLabelConfigurationModel {\r\n softLabelConfigurationId: string;\r\n projectLabel: string;\r\n goalLabel: string;\r\n employeeLabel: string;\r\n userStoryLabel: string;\r\n deadlineLabel: string;\r\n projectsLabel: string;\r\n goalsLabel: string;\r\n employeesLabel: string;\r\n userStoriesLabel: string;\r\n deadlinesLabel: string;\r\n estimatedTimeLabel: string;\r\n estimationLabel: string;\r\n estimationsLabel: string;\r\n estimateLabel: string;\r\n estimatesLabel: string;\r\n auditLabel: string;\r\n\tauditsLabel: string;\r\n\tconductLabel: string;\r\n\tconductsLabel: string;\r\n\tactionLabel: string;\r\n\tactionsLabel: string;\r\n\ttimelineLabel: string;\r\n\tauditActivityLabel: string;\r\n\tauditReportLabel: string;\r\n auditReportsLabel: string;\r\n reportLabel: string;\r\n\treportsLabel: string;\r\n\tauditAnalyticsLabel: string;\r\n companyId: string;\r\n createdDateTime: string;\r\n timeStamp: any;\r\n searchText: string;\r\n clientLabel: string;\r\n\tclientsLabel: string;\r\n}\r\n\r\nexport class WorkspaceDashboardFilterModel {\r\n workspaceDashboardId: string;\r\n workspaceDashboardFilterId: string;\r\n filterJson: string;\r\n isCalenderView: boolean;\r\n searchText: string;\r\n state: any;\r\n isArchived: boolean;\r\n}\r\n\r\nexport class WorkspaceDashboardFilterDropdown {\r\n searchText: string;\r\n tagSearchText: string;\r\n workItemStatuses: string;\r\n workItemTypes: string;\r\n bugPriorities: string;\r\n isIncludeUnAssigned: boolean;\r\n isExcludeOtherUs: boolean;\r\n isUserBoardView: boolean;\r\n pageSize: number;\r\n pageNumber: number;\r\n schedulerViewIndex: number;\r\n isTheBoardLayoutKanban: boolean;\r\n isReportsPage: boolean;\r\n isCalenderView: boolean;\r\n isEmployeeTaskBoardPage: boolean;\r\n selectedItem:any;\r\n isDocumentsView:boolean;\r\n isReviewEnabled:boolean;\r\n}","import { library } from \"@fortawesome/fontawesome-svg-core\";\r\nimport { faInstagram, faTwitter } from \"@fortawesome/free-brands-svg-icons\";\r\nimport { faLinkedin } from \"@fortawesome/free-brands-svg-icons\";\r\nimport { faYoutube } from \"@fortawesome/free-brands-svg-icons\";\r\nimport { faFacebookF } from \"@fortawesome/free-brands-svg-icons\";\r\n// tslint:disable-next-line: max-line-length\r\nimport { faCalendarWeek, faChartArea, faChartPie, faFileContract, faFileUpload, faLockOpen, faStore, faTable, faTag, faTrashAlt, faFileSignature, faSortDown } from \"@fortawesome/free-solid-svg-icons\";\r\n// tslint:disable-next-line: max-line-length\r\nimport { faAddressCard, faCalendar, faCalendarAlt, faCalendarDay, faCaretDown, faCaretRight, faCaretSquareRight, faClipboard, faClone, faCloudUploadAlt, faCoffee, faCompress, faEllipsisH, faEllipsisV, faEnvelope, faEnvelopeOpenText, faEnvelopeSquare, faEyeSlash, faFileCsv, faFileExcel, faFileExport, faFileImport, faFileInvoice, faFilePdf, faHistory, faPaperclip, faParking, faPhoneAlt, faPlusSquare, faQuestionCircle, faShareSquare, faSort, faUserTimes } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFastBackward, faThumbtack } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCaretSquareDown } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faTimesCircle } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFolder } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPlay } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFilter } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFastForward } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCartArrowDown } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faArrowsAlt } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCamera } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSave } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faTimes } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCheck } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faTrash } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSpinner } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faComment } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faEdit } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPen } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faLandmark } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faArchive } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faLock } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faThumbsUp } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faThumbsDown } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faEye } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUpload } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPause } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faArrowRight } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faArrowLeft } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBars } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faThLarge } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faMinus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUser } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faClock } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBatteryThreeQuarters } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSquare } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSearch } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSync } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUserPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faInfoCircle } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPaperPlane } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faRedo } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCopy } from \"@fortawesome/free-solid-svg-icons\"\r\nimport { faArrowUp } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faArrowDown } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faWrench } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faExternalLinkAlt } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCreditCard } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUndo } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faMoneyBillAlt } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUtensils } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBookmark } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faExclamationTriangle } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCogs } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faAngleDoubleLeft } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faChevronLeft } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faAngleDoubleRight } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faChevronRight } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faAngleRight } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faAngleLeft } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSignal } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBug } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faGripLinesVertical } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faWindowClose } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCircle } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faKey } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faGraduationCap } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBriefcase } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faLanguage } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPlusCircle } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faMinusCircle } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUsers } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPrint } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faDownload } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faChartLine } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faChartBar } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBroom } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faSlidersH } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faImage } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faKeyboard } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faMouse } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faMapMarker } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBox } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUserCog } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFile } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faDollarSign } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCity } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBuilding } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faStickyNote } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faStreetView } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFlag } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faGlobe } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faEnvelopeOpen } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBullseye } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faUserFriends } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faPuzzlePiece } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCodeBranch } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faThList } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFileAlt } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faFrown } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faHouseDamage } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faCog } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { faBinoculars, faCircleNotch, faDesktop, faRedoAlt, faSmile, faSyncAlt, faTasks } from \"@fortawesome/free-solid-svg-icons\";\r\n\r\nconst shareButtonsIcons = [\r\n faBox, faMapMarker, faKey, faGraduationCap, faBriefcase,\r\n faLanguage, faCoffee, faFilter, faCamera, faCheck, faSave,\r\n faTimes, faTrash, faSpinner, faComment, faEdit, faPlus, faPen,\r\n faLandmark, faSmile, faArchive, faLock, faThumbsUp, faEye,\r\n faUpload, faPause, faArrowRight, faArrowLeft, faBars, faThLarge,\r\n faMinus, faUser, faClock, faBatteryThreeQuarters, faSquare,\r\n faSearch, faSync, faTasks, faInfoCircle, faPaperPlane, faRedo,\r\n faCopy, faArrowUp, faArrowDown, faWrench, faExternalLinkAlt,\r\n faUndo, faCreditCard, faMoneyBillAlt, faUtensils, faPlay, faLockOpen,\r\n faExclamationTriangle, faBookmark, faCogs, faAngleDoubleLeft,\r\n faChevronLeft, faAngleDoubleRight, faChevronRight, faFolder, faFileSignature,\r\n faAngleLeft, faAngleRight, faSignal, faBug, faGripLinesVertical,\r\n faThumbsDown, faWindowClose, faTimesCircle, faCircle, faFastBackward,\r\n faCaretSquareDown, faEnvelopeOpenText, faEnvelope, faFastForward,\r\n faCartArrowDown, faArrowsAlt, faPlusCircle, faMinusCircle, faShareSquare,\r\n faFastBackward, faFastForward, faUsers, faPrint, faDownload, faClipboard,\r\n faCaretDown, faCaretRight, faPlusSquare, faChartLine, faSort, faCaretSquareRight,\r\n faUserTimes, faEyeSlash, faCalendar, faCalendarAlt, faCalendarDay, faUserPlus,\r\n faChartBar, faCompress, faBroom, faSlidersH, faFilePdf, faFileExcel, faEllipsisH,\r\n faImage, faEnvelopeSquare, faFileImport, faFileExport, faFileCsv, faQuestionCircle,\r\n faFile, faDollarSign, faCity, faBuilding, faStickyNote, faStreetView, faFlag,\r\n faAddressCard, faGlobe, faKeyboard, faMouse, faEnvelopeOpen, faPhoneAlt, faSmile,\r\n faFilePdf, faFileExcel, faImage, faThumbtack, faUserCog, faFileInvoice, faBullseye,\r\n faUserFriends, faPuzzlePiece, faCodeBranch, faThList, faFileAlt, faChartLine,\r\n faHistory, faClone, faEllipsisV, faTwitter, faInstagram, faLinkedin, faYoutube,\r\n faFacebookF, faDesktop, faRedoAlt, faParking, faTag, faTasks, faCircleNotch, faSyncAlt,\r\n faFrown, faChartPie, faTable, faChartArea, faStore, faHouseDamage, faCloudUploadAlt,faFileContract,\r\n faBinoculars, faCog, faPaperclip, faCalendarWeek, faTrashAlt, faFileUpload, faPlusCircle,faSortDown];\r\n\r\nlibrary.add(...shareButtonsIcons);\r\n","import { Injectable } from '@angular/core';\r\nimport { HubConnection, HubConnectionBuilder, LogLevel } from '@microsoft/signalr'\r\nimport * as signalR from \"@microsoft/signalr\";\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { NotificationModel } from '../models/NotificationsOutPutModel';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { map } from 'rxjs/operators';\r\n// import { MessagePackHubProtocol } from '@microsoft/signalr-protocol-msgpack'\r\n\r\ndeclare var $: any;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SignalrService {\r\n\r\n private connection: any;\r\n private proxy: any;\r\n public notifications$: any = new BehaviorSubject([]);\r\n notifications: any = [];\r\n constructor(private cookieService: CookieService, private http: HttpClient) { }\r\n\r\n public initializeSignalRConnection(): void {\r\n // this.connection = $.hubConnection(`${environment.apiURL}signalr`, { useDefaultPath: false });\r\n // // Please note that by default '/signalr' URL will be used to connect to your SignalR service. Providing 'useDefaultPath' allows you to customize it\r\n // this.proxy = this.connection.createHubProxy('LookupSyncNotification');\r\n\r\n // this.proxy.on('LookupSyncSuccess', (serverMessage) => this.onMessageReceived(serverMessage));\r\n\r\n // this.connection.start().done((data: any) => {\r\n // console.log('Connected to Connection Hub');\r\n // this.sendMessage();\r\n // }).catch((error: any) => {\r\n // console.log('Connection Hub error:' + error);\r\n // });\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n\t\tlet APIEndpoint = environment.notificationUrl;\r\n let connection = new signalR.HubConnectionBuilder()\r\n .withUrl(APIEndpoint, {\r\n skipNegotiation: true,\r\n transport: signalR.HttpTransportType.WebSockets,\r\n accessTokenFactory: () => \"Bearer \" + this.cookieService.get(LocalStorageProperties.CurrentUser)\r\n })\r\n .withAutomaticReconnect()\r\n .build();\r\n connection.start().then(\r\n function () {\r\n console.log(\"connected signalr hub\");\r\n connection.invoke('GetConnectionId', sessionStorage.getItem('conectionId'))\r\n .then((res) => {sessionStorage.setItem('conectionId', res)})\r\n .catch((error: any) => {\r\n console.log(error);\r\n });\r\n }\r\n ).catch(\r\n function (er) {\r\n console.log(\"hub con error: \" + er);\r\n }\r\n );\r\n connection.on('BroadCastNotification', (serverMessage) => this.addToNotificationItem(serverMessage));\r\n }\r\n\r\n // public sendMessage(): void {\r\n // connection.invoke('ClientMessage', 'My message')\r\n // .catch((error: any) => {\r\n // console.log('sending message error -> ' + error);\r\n // });\r\n // }\r\n\r\n private onMessageReceived(serverMessage: any) {\r\n console.log('New message received from Server: ' + serverMessage);\r\n }\r\n\r\n getNotifications() {\r\n this.notifications$.next(this.notifications);\r\n }\r\n\r\n addToNotificationItem(item) {\r\n this.notifications.push(item);\r\n this.getNotifications();\r\n }\r\n\r\n addToNotificationList(item) {\r\n this.notifications.push(...item);\r\n this.getNotifications();\r\n }\r\n\r\n removeItemFromNotifications(id) {\r\n this.notifications = this.notifications.filter(item => item.id != id);\r\n this.getNotifications();\r\n }\r\n\r\n removeAllNotifications() {\r\n this.notifications = [];\r\n this.getNotifications();\r\n }\r\n\r\n upsertReadNewNotifications(notifications: NotificationModel[]) {\r\n const httpOptions = {\r\n\t\t\theaders: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n\t\t };\r\n\t\tlet environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n\t\tlet APIEndpoint = environment.apiURL;\r\n\t\tlet body = JSON.stringify(notifications);\r\n\t\treturn this.http.post(APIEndpoint + \"Notification/NotificationApi/UpsertReadNewNotifications\",body, httpOptions)\r\n\t\t\t.pipe(map(result => {\r\n\t\t\t\treturn result;\r\n\t\t\t}));\r\n }\r\n\r\n getNotificationsFromApi() {\r\n const httpOptions = {\r\n\t\t\theaders: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n\t\t };\r\n\t\tlet environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n\t\tlet APIEndpoint = environment.apiURL;\r\n\t\treturn this.http.post(APIEndpoint + \"Notification/NotificationApi/GetNotifications\", null, httpOptions)\r\n\t\t\t.pipe(map((result: any) => {\r\n\t\t\t\tif(result.success && result.data && result.data.length > 0) {\r\n this.notifications = result.data;\r\n this.getNotifications();\r\n }\r\n\t\t\t})); \r\n }\r\n\r\n}","import { Component, OnInit, Input, OnDestroy, Renderer2, ChangeDetectionStrategy } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { Store, select } from \"@ngrx/store\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport * as sharedModuleReducers from \"../../store/reducers/index\";\r\nimport { Observable } from \"rxjs\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { ThemeModel } from '../../models/themes.model';\r\nimport { UserModel } from '../../models/user';\r\nimport { LayoutService } from '../../services/layout.service';\r\nimport { ThemeService } from '../../services/theme.service';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\n\r\n@Component({\r\n selector: \"app-header-top\",\r\n templateUrl: \"./header-top.component.html\",\r\n})\r\n\r\nexport class HeaderTopComponent implements OnInit, OnDestroy {\r\n themeModel$: Observable<ThemeModel>;\r\n layoutConf: any;\r\n menuItems: any;\r\n egretThemes: any[] = [];\r\n currentLang = \"en\";\r\n availableLangs = [\r\n {\r\n name: \"English\",\r\n code: \"en\"\r\n },\r\n {\r\n name: \"తెలుగు\",\r\n code: \"te\"\r\n },\r\n {\r\n name: \"한국어\",\r\n code: \"ko\"\r\n }\r\n ];\r\n @Input() notificPanel;\r\n authenticatedUserRecord$: Observable<UserModel>;\r\n\r\n constructor(\r\n private layout: LayoutService,\r\n public themeService: ThemeService,\r\n public translate: TranslateService,\r\n private renderer: Renderer2,\r\n private store: Store<State>,\r\n public cookieService: CookieService,\r\n \r\n ) { }\r\n\r\n ngOnInit() {\r\n this.themeModel$ = this.store.pipe(select(sharedModuleReducers.getThemeModel));\r\n this.layoutConf = this.layout.layoutConf;\r\n this.egretThemes = this.themeService.egretThemes;\r\n this.authenticatedUserRecord$ = this.store.pipe(\r\n select(sharedModuleReducers.getAuthenticatedUserModel)\r\n );\r\n }\r\n\r\n ngOnDestroy() { }\r\n\r\n setLang() {\r\n\r\n this.translate.use(this.currentLang);\r\n let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);\r\n\r\n if (currentCulture === 'null' || currentCulture === 'undefined') {\r\n currentCulture = 'en';\r\n }\r\n this.currentLang = currentCulture;\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentCulture, this.currentLang, null, environment.cookiePath, window.location.hostname, false, \"Strict\");\r\n }\r\n\r\n changeTheme(theme) {\r\n // this.themeService.changeTheme(this.renderer, theme);\r\n }\r\n toggleNotific() {\r\n this.notificPanel.toggle();\r\n }\r\n toggleSidenav() {\r\n if (this.layoutConf.sidebarStyle === \"closed\") {\r\n return this.layout.publishLayoutChange({\r\n sidebarStyle: \"full\"\r\n });\r\n }\r\n this.layout.publishLayoutChange({\r\n sidebarStyle: \"closed\"\r\n });\r\n }\r\n}\r\n","<div class=\"header-topnav mat-elevation-z2\">\r\n <div class=\"container\">\r\n <div class=\"topnav\">\r\n <!-- App Logo -->\r\n <div class=\"topbar-branding\">\r\n <img src=\"(themeModel$ | async).companyMiniLogo\" alt=\"\" class=\"app-logo\">\r\n </div>\r\n\r\n <ul class=\"menu\" *ngIf=\"!layoutConf.isMobile\">\r\n <li *ngFor=\"let item of menuItems; let i = index;\">\r\n <div *ngIf=\"item.type !== 'separator'\" routerLinkActive=\"open\">\r\n <a matRipple routerLink=\"/{{item.state}}\" *ngIf=\"item.type === 'link'\">\r\n <mat-icon>{{item.icon}}</mat-icon>\r\n {{item.name | translate}}\r\n </a>\r\n <div *ngIf=\"item.type === 'dropDown'\">\r\n <label matRipple for=\"drop-{{i}}\" class=\"toggle\">\r\n <mat-icon>{{item.icon}}</mat-icon> {{item.name | translate}}\r\n </label>\r\n <a matRipple>\r\n <mat-icon>{{item.icon}}</mat-icon> {{item.name | translate}}\r\n </a>\r\n <input type=\"checkbox\" id=\"drop-{{i}}\" />\r\n <ul>\r\n <li *ngFor=\"let itemLvL2 of item.sub; let j = index;\" routerLinkActive=\"open\">\r\n\r\n <a routerLink=\"{{ itemLvL2.state ? '/'+itemLvL2.state : ''}}\" appDropdownToggle\r\n *ngIf=\"itemLvL2.type === 'applicationlink'\" matRipple>\r\n <span class=\"item-name lvl2\">{{\r\n itemLvL2.name | translate\r\n }}\r\n </span>\r\n <span fxFlex></span>\r\n </a>\r\n\r\n <a matRipple routerLink=\"{{item.state ? '/'+item.state : ''}}/{{itemLvL2.state}}\"\r\n *ngIf=\"itemLvL2.type !== 'dropDown' && itemLvL2.type !== 'applicationlink'\">\r\n <mat-icon *ngIf=\"itemLvL2.icon\">{{itemLvL2.icon}}</mat-icon>\r\n {{itemLvL2.name | translate}}\r\n </a>\r\n\r\n\r\n\r\n <div *ngIf=\"itemLvL2.type === 'dropDown'\">\r\n <label matRipple for=\"drop-{{i}}{{j}}\" class=\"toggle\">{{itemLvL2.name | translate}}</label>\r\n <a matRipple>\r\n <mat-icon *ngIf=\"itemLvL2.icon\">{{itemLvL2.icon}}</mat-icon> {{itemLvL2.name | translate}}\r\n </a>\r\n <input type=\"checkbox\" id=\"drop-{{i}}{{j}}\" />\r\n <!-- Level 3 -->\r\n <ul>\r\n <li *ngFor=\"let itemLvL3 of itemLvL2.sub\" routerLinkActive=\"open\">\r\n <a matRipple\r\n routerLink=\"{{item.state ? '/'+item.state : ''}}{{itemLvL2.state ? '/'+itemLvL2.state : ''}}/{{itemLvL3.state}}\">\r\n <mat-icon *ngIf=\"itemLvL3.icon\">{{itemLvL3.icon}}</mat-icon>\r\n {{itemLvL3.name | translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </li>\r\n </ul>\r\n <span fxFlex></span>\r\n <!-- End Navigation -->\r\n\r\n <!-- Language Switcher -->\r\n <mat-menu #languageChange=\"matMenu\">\r\n <mat-select *ngIf=\"!layoutConf.isMobile\" placeholder=\"\" id=\"langToggle\" [style.width]=\"'auto'\"\r\n name=\"currentLang\" [(ngModel)]=\"currentLang\" (selectionChange)=\"setLang()\" class=\"topbar-button-right\">\r\n <mat-option *ngFor=\"let lang of availableLangs\" [value]=\"lang.code\" ngDefaultControl>{{ lang.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-menu>\r\n <!-- Theme Switcher -->\r\n <button mat-icon-button id=\"schemeToggle\" [style.overflow]=\"'visible'\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"Color Schemes\"\r\n [matMenuTriggerFor]=\"themeMenu\" class=\"topbar-button-right\">\r\n <mat-icon>format_color_fill</mat-icon>\r\n </button>\r\n <mat-menu #themeMenu=\"matMenu\">\r\n <mat-grid-list class=\"theme-list\" cols=\"2\" rowHeight=\"48px\">\r\n <mat-grid-tile *ngFor=\"let theme of egretThemes\" (click)=\"changeTheme(theme)\">\r\n <div mat-menu-item [title]=\"theme.name\">\r\n <div [style.background]=\"theme.baseColor\" class=\"egret-swatch\"></div>\r\n <mat-icon class=\"active-icon\" *ngIf=\"theme.isActive\">check</mat-icon>\r\n </div>\r\n </mat-grid-tile>\r\n </mat-grid-list>\r\n </mat-menu>\r\n\r\n <!-- Notification toggle button -->\r\n <button mat-icon-button matTooltip=\"{{ 'SHELL.NOTIFICATIONS' | translate}}\" matTooltipClass=\"tooltipClass-mat\" (click)=\"toggleNotific()\"\r\n [style.overflow]=\"'visible'\" class=\"topbar-button-right\">\r\n <mat-icon>notifications</mat-icon>\r\n <span class=\"notification-number mat-bg-warn\">3</span>\r\n </button>\r\n <!-- Top left user menu -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"accountMenu\" class=\"topbar-button-right mr-1 img-button\">\r\n <img *ngIf=\"(authenticatedUserRecord$ | async) && (authenticatedUserRecord$ | async).profileImage != null\"\r\n [src]=\"(authenticatedUserRecord$ | async).profileImage\">\r\n <img\r\n *ngIf=\"(authenticatedUserRecord$ | async) == null || (authenticatedUserRecord$ | async).profileImage == null\"\r\n src=\"../../../../assets/images/faces/18.png\">\r\n </button>\r\n <mat-menu #accountMenu=\"matMenu\">\r\n <button mat-menu-item [routerLink]=\"['/profile/overview']\">\r\n <mat-icon>account_box</mat-icon>\r\n <span>Profile</span>\r\n </button>\r\n <button mat-menu-item [matMenuTriggerFor]=\"languageChange\">\r\n <mat-icon>language</mat-icon>\r\n <span>Language</span>\r\n </button>\r\n <button mat-menu-item [routerLink]=\"['/profile/settings']\">\r\n <mat-icon>settings</mat-icon>\r\n <span>Account Settings</span>\r\n </button>\r\n <button mat-menu-item>\r\n <mat-icon>notifications_off</mat-icon>\r\n <span>Disable alerts</span>\r\n </button>\r\n <button mat-menu-item [routerLink]=\"['/sessions/signin']\">\r\n <mat-icon>exit_to_app</mat-icon>\r\n <span>Sign out</span>\r\n </button>\r\n </mat-menu>\r\n <!-- Mobile screen menu toggle -->\r\n <button mat-icon-button class=\"mr-1\" (click)=\"toggleSidenav()\" *ngIf=\"layoutConf.isMobile\">\r\n <mat-icon>menu</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n</div>","export const MenuCategories = {\r\n Main: `Main`,\r\n Admin: `Admin`,\r\n Reports: `Reports`,\r\n}","import { Component, Input, ViewChild, ElementRef, ChangeDetectorRef } from \"@angular/core\";\r\nimport { Store, select } from \"@ngrx/store\";\r\nimport { State } from \"./../../store/reducers/index\";\r\nimport * as sharedModuleReducers from \"./../../store/reducers/index\";\r\n\r\nimport { Observable } from \"rxjs\";\r\nimport { MenuItemActionTypes, GetAllMenuItemsTriggered } from \"../../store/actions/menuitems.actions\";\r\nimport { tap } from \"rxjs/operators\";\r\nimport { IMenuItem } from '../../models/IMenuItem';\r\nimport { MenuCategories } from '../../constants/menu-categories';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\n\r\n@Component({\r\n selector: \"app-sidenav\",\r\n templateUrl: \"./sidenav.template.html\"\r\n})\r\n\r\nexport class SidenavComponent {\r\n @Input(\"hasIconMenu\") public hasIconTypeMenuItem: boolean;\r\n @Input(\"iconMenuTitle\") public iconTypeMenuTitle: string;\r\n\r\n public menuItems$: Observable<IMenuItem[]>;\r\n\r\n showTooltip: any;\r\n\r\n constructor(private store: Store<State>) { }\r\n\r\n ngOnInit() {\r\n this.menuItems$ = this.store.pipe(\r\n select(sharedModuleReducers.getCurrentActiveMenuCategoryMenuItems),\r\n tap(menuList => console.log(menuList))\r\n );\r\n\r\n this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));\r\n }\r\n}\r\n","<div class=\"sidenav-hold\">\r\n <div class=\"icon-menu\" *ngIf=\"hasIconTypeMenuItem\">\r\n <!-- Icon menu separator -->\r\n <div class=\"mt-1 mb-1 nav-item-sep\">\r\n <mat-divider [ngStyle]=\"{ margin: '0 -24px' }\"></mat-divider>\r\n <span class=\"text-muted icon-menu-title\">{{ iconTypeMenuTitle }}</span>\r\n </div>\r\n <!-- Icon menu items -->\r\n <div class=\"icon-menu-item\" *ngFor=\"let item of (menuItems$ | async)\">\r\n <button *ngIf=\"!item.disabled && item.type === 'icon'\" mat-raised-button matTooltipClass=\"tooltipClass-mat\" [matTooltip]=\"item.tooltip\"\r\n routerLink=\"/{{ item.state }}\" routerLinkActive=\"mat-bg-primary\">\r\n <mat-icon>{{ item.icon }}</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <ul appDropdown class=\"sidenav\">\r\n <li *ngFor=\"let item of (menuItems$ | async)\" appDropdownLink routerLinkActive=\"open\">\r\n <div class=\"nav-item-sep\" *ngIf=\"item.type === 'separator'\">\r\n <mat-divider></mat-divider>\r\n <span class=\"text-muted\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{item.name | translate }}\">{{ item.name | translate }}</span>\r\n </div>\r\n <div *ngIf=\"\r\n !item.disabled && item.type !== 'separator' && item.type !== 'icon'\r\n \" class=\"lvl1\">\r\n <a routerLink=\"/{{ item.state }}\" appDropdownToggle matRipple *ngIf=\"item.type === 'link'\">\r\n <mat-icon>{{ item.icon }}</mat-icon>\r\n <span class=\"item-name lvl1\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{item.name | translate }}\">{{ item.name | translate }}</span>\r\n <span fxFlex></span>\r\n <span class=\"menuitem-badge mat-bg-{{ badge.color }}\" [ngStyle]=\"{ background: badge.color }\"\r\n *ngFor=\"let badge of item.badges\">{{ badge.value }}</span>\r\n </a>\r\n <a [href]=\"item.state\" appDropdownToggle matRipple *ngIf=\"item.type === 'extLink'\" target=\"_blank\">\r\n <mat-icon>{{ item.icon }}</mat-icon>\r\n <span class=\"item-name lvl1\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{item.name | translate }}\">{{ item.name | translate }}</span>\r\n <span fxFlex></span>\r\n <span class=\"menuitem-badge mat-bg-{{ badge.color }}\" [ngStyle]=\"{ background: badge.color }\"\r\n *ngFor=\"let badge of item.badges\">{{ badge.value }}</span>\r\n </a>\r\n\r\n <a [href]=\"item.state\" appDropdownToggle matRipple *ngIf=\"item.type === 'extLink'\" target=\"_blank\">\r\n <mat-icon>{{ item.icon }}</mat-icon>\r\n <span class=\"item-name lvl1\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{item.name | translate }}\">{{ item.name | translate }}</span>\r\n <span fxFlex></span>\r\n <span class=\"menuitem-badge mat-bg-{{ badge.color }}\" [ngStyle]=\"{ background: badge.color }\"\r\n *ngFor=\"let badge of item.badges\">{{ badge.value }}</span>\r\n </a>\r\n\r\n <a [href]=\"item.state\" appDropdownToggle matRipple *ngIf=\"item.type === 'extLink'\" target=\"_blank\">\r\n <mat-icon>{{ item.icon }}</mat-icon>\r\n <span class=\"item-name lvl1\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{item.name | translate }}\">{{ item.name | translate }}</span>\r\n <span fxFlex></span>\r\n <span class=\"menuitem-badge mat-bg-{{ badge.color }}\" [ngStyle]=\"{ background: badge.color }\"\r\n *ngFor=\"let badge of item.badges\">{{ badge.value }}</span>\r\n </a>\r\n\r\n <!-- DropDown -->\r\n <a *ngIf=\"item.type === 'dropDown'\" appDropdownToggle matRipple>\r\n <mat-icon>{{ item.icon }}</mat-icon>\r\n <span class=\"item-name lvl1\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{item.name | translate }}\">{{ item.name | translate }}</span>\r\n <span fxFlex></span>\r\n <span class=\"menuitem-badge mat-bg-{{ badge.color }}\" [ngStyle]=\"{ background: badge.color }\"\r\n *ngFor=\"let badge of item.badges\">{{ badge.value }}</span>\r\n <mat-icon class=\"menu-caret\">keyboard_arrow_right</mat-icon>\r\n </a>\r\n <!-- LEVEL 2 -->\r\n <ul class=\"submenu lvl2\" appDropdown *ngIf=\"item.type === 'dropDown'\">\r\n <li *ngFor=\"let itemLvL2 of item.sub\" appDropdownLink routerLinkActive=\"open\">\r\n\r\n <a routerLink=\"{{ itemLvL2.state ? '/'+itemLvL2.state : ''}}\" appDropdownToggle\r\n *ngIf=\"itemLvL2.type === 'applicationlink'\" matRipple>\r\n {{showTooltip}}\r\n <span class=\"item-name lvl2 hide-content-overflow\" matTooltipClass=\"tooltipClass-mat\" [matTooltip]=\"itemLvL2.name.length > 30 ? itemLvL2.name : ''\"\r\n matTooltipShowDelay=\"300\">{{\r\n itemLvL2.name | translate\r\n }}\r\n </span>\r\n <span fxFlex></span>\r\n </a>\r\n\r\n <a routerLink=\"{{ item.state ? '/' + item.state : '' }}/{{\r\n itemLvL2.state\r\n }}\" appDropdownToggle *ngIf=\"itemLvL2.type !== 'dropDown' && itemLvL2.type !== 'applicationlink'\"\r\n matRipple>\r\n <span class=\"item-name lvl2\">{{\r\n itemLvL2.name | translate\r\n }}</span>\r\n <span fxFlex></span>\r\n </a>\r\n\r\n <a *ngIf=\"itemLvL2.type === 'dropDown'\" appDropdownToggle matRipple>\r\n <span class=\"item-name lvl2\">{{\r\n itemLvL2.name | translate\r\n }}</span>\r\n <span fxFlex></span>\r\n <mat-icon class=\"menu-caret\">keyboard_arrow_right</mat-icon>\r\n </a>\r\n\r\n <!-- LEVEL 3 -->\r\n <ul class=\"submenu lvl3\" appDropdown *ngIf=\"itemLvL2.type === 'dropDown'\">\r\n <li *ngFor=\"let itemLvL3 of itemLvL2.sub\" appDropdownLink routerLinkActive=\"open\">\r\n <a routerLink=\"{{ item.state ? '/' + item.state : '' }}{{\r\n itemLvL2.state ? '/' + itemLvL2.state : ''\r\n }}/{{ itemLvL3.state }}\" appDropdownToggle matRipple>\r\n <span class=\"item-name lvl3\">{{\r\n itemLvL3.name | translate\r\n }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n</div>","import { Component, OnInit, OnDestroy, AfterViewInit } from \"@angular/core\";\r\n// import PerfectScrollbar from 'perfect-scrollbar';\r\n\r\n@Component({\r\n selector: \"app-sidebar-top\",\r\n templateUrl: \"./sidebar-top.component.html\"\r\n})\r\n\r\nexport class SidebarTopComponent implements OnInit, OnDestroy, AfterViewInit {\r\n // private sidebarPS: PerfectScrollbar;\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n\r\n ngAfterViewInit() {\r\n // setTimeout(() => {\r\n // this.sidebarPS = new PerfectScrollbar('#sidebar-top-scroll-area', {\r\n // suppressScrollX: true\r\n // })\r\n // })\r\n }\r\n\r\n ngOnDestroy() {\r\n // if(this.sidebarPS) {\r\n // this.sidebarPS.destroy();\r\n // }\r\n }\r\n}\r\n","<div class=\"sidebar-panel\">\r\n <div id=\"sidebar-top-scroll-area\" [perfectScrollbar] class=\"navigation-hold\" fxLayout=\"column\">\r\n <app-sidenav></app-sidenav>\r\n </div>\r\n</div>","export class WorkspaceList {\r\n workspaceId: string;\r\n workspaceName: string;\r\n isArchived: boolean;\r\n timeStamp: any;\r\n roleNames: string;\r\n roleIds: string;\r\n editRoleIds: string;\r\n deleteRoleIds: string;\r\n selectedRoleIds: any;\r\n isEditable: boolean;\r\n canView: boolean;\r\n canEdit: boolean;\r\n canDelete: boolean;\r\n isDefault: boolean;\r\n isHidden: boolean;\r\n description: string;\r\n isAppsInDraft: boolean;\r\n}\r\n","import { Component, OnInit, Inject } from \"@angular/core\";\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { Store, select } from \"@ngrx/store\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport { ClearDemoDataTriggred, AuthenticationActionTypes } from \"../../store/actions/authentication.actions\";\r\nimport { Actions, ofType } from \"@ngrx/effects\";\r\nimport { takeUntil, tap } from \"rxjs/operators\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { Subject, Observable } from \"rxjs\";\r\nimport * as sharedModuleReducers from '../../store/reducers/index';\r\nimport { GetAllMenuItemsTriggered } from \"../../store/actions/menuitems.actions\";\r\nimport { MenuCategories } from '../../constants/menu-categories';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { WorkspaceList } from '../../models/workspaceList';\r\nimport { CommonService } from '../../services/common-used.service';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { WINDOW } from '../../../globaldependencies/helpers/window.helper';\r\n\r\n/** @dynamic */\r\n\r\n@Component({\r\n selector: \"app-confirmation-dialog\",\r\n templateUrl: \"./confirmation-dialog.component.html\"\r\n})\r\n\r\nexport class ConfirmationDialogComponent implements OnInit {\r\n\r\n public ngDestroyed$ = new Subject();\r\n public demoDataDeletionLoading$: Observable<boolean>;\r\n\r\n constructor(public dialogRef: MatDialogRef<ConfirmationDialogComponent>, private route: ActivatedRoute,\r\n private store: Store<State>, private actionUpdates$: Actions, private router: Router, private commonService: CommonService,\r\n private cookieService: CookieService,\r\n @Inject(MAT_DIALOG_DATA) public data: any, @Inject(WINDOW) private window: Window) {\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(AuthenticationActionTypes.ClearDemoDataCompleted),\r\n tap(() => {\r\n this.dialogRef.close({ delete: true });\r\n this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));\r\n this.GetWorkSpaces();\r\n })\r\n )\r\n .subscribe();\r\n }\r\n\r\n ngOnInit() { }\r\n\r\n Delete() {\r\n this.store.dispatch(new ClearDemoDataTriggred());\r\n this.demoDataDeletionLoading$ = this.store.pipe(select(sharedModuleReducers.getDemoRecordsDataDeletion));\r\n }\r\n\r\n CancelDelete() {\r\n this.dialogRef.close({ delete: false });\r\n }\r\n\r\n GetWorkSpaces(){\r\n var workspace = new WorkspaceList();\r\n workspace.workspaceId = \"null\";\r\n workspace.isHidden = false;\r\n this.commonService.GetWorkspaceList(workspace).subscribe((response: any) => {\r\n if(response.success) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n var workspaceId = response.data[0].workspaceId;\r\n this.cookieService.set(\"DefaultDashboard\", workspaceId ? JSON.stringify(workspaceId) : null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n }\r\n if (this.router.url == \"/dashboard-management\") {\r\n window.location.pathname = \"/hrmanagment/employeelist\"\r\n } else {\r\n window.location.pathname = \"/dashboard-management\"\r\n }\r\n })\r\n }\r\n}\r\n","<mat-card-content class=\"text-center\">\r\n <div class=\"card-title-text mb-1\" style=\"font-size:40px;color: gray\">Are you sure you want to delete ?\r\n </div>\r\n <div class=\"text-center\">\r\n <!-- <mat-icon style=\"font-size: 50px\">error_outline</mat-icon> -->\r\n <!-- <i class=\"fa fa-exclamation-circle\" style=\"font-size: 50px\" aria-hidden=\"true\"></i> -->\r\n </div>\r\n</mat-card-content>\r\n<div class=\"text-center mt-1\">\r\n <button class=\"mr-1\" mat-button mat-raised-button color=\"primary\" (click)=\"Delete()\" [disabled]=\"(demoDataDeletionLoading$ | async)\">\r\n <fa-icon class=\"mr-05\" icon=\"check\"></fa-icon> {{ 'YES' | translate }}\r\n <i class=\"fa fa-spin fa-spinner\" *ngIf=\"(demoDataDeletionLoading$ | async)\"></i>\r\n </button>\r\n <button mat-button mat-raised-button (click)=\"CancelDelete()\">\r\n <fa-icon class=\"mr-05\" icon=\"times\"></fa-icon> {{ 'CANCEL' | translate }}\r\n </button>\r\n</div>","export const ChannelNames = {\r\n Channel_TaskAssignments: 'ProjectManagement.TaskAssignments.',\r\n Channel_RoleUpdates: 'System.RoleUpdates.',\r\n Channel_StatusReportSubmission : 'StatusReport.ReprotSubmissions.',\r\n Channel_StatusConfigAssign : 'StatusReport.ConfigurationAssignments.',\r\n Channel_MultiChartsScheduling : 'MultiCharts.Scheduling.',\r\n Channel_AssetAssignment: 'AssetManagement.AssetAssigned.',\r\n Channel_NewProject: 'ProjectManagement.NewProject.',\r\n Channel_ProjectMemberRole: 'ProjectManagement.ProjectMemberRole.',\r\n Channel_GoalApprovedFromReplan: 'ProjectManagement.GoalApprovedFromReplan.',\r\n Channel_UserStoryUpdateNotification : 'ProjectManagement.WorkItemUpdate.',\r\n Channel_AnnouncementNotification : 'HrManagement.Announcement.',\r\n Channel_UserStoryComment : 'ProjectManagement.UserStoryCommentNotification.',\r\n Channel_SprintStarted : 'ProjectManagement.SprintStarted.',\r\n Channel_SprintRequestedToReplan: 'ProjectManagement.SprintReplan.',\r\n Channel_PeroformanceNotification: 'HrManagement.Performance.',\r\n Channel_ReminderNotification: 'HrManagement.Reminder.',\r\n Channel_ProjectFeature: 'ProjectManagement.ProjectComponent.',\r\n Channel_UserStoryArchive: 'ProjectManagement.UserStoryArchive.',\r\n Channel_UserStoryPark: 'ProjectManagement.ParkUserStory.',\r\n Channel_GenericActivityNotification: 'GenericNotificationActivity.',\r\n Channel_LeaveApplied: 'LeaveManagement.LeaveNotification.',\r\n Channel_ApproveLeave: 'LeaveManagement.ApproveLeaveNotification.',\r\n Channel_RejectLeave: 'LeaveManagement.RejectLeaveNotification.',\r\n Channel_Resignation: 'Payroll.ResignationNotification.',\r\n Channel_ApproveResignation: 'Payroll.ResignationApprovalNotification.',\r\n Channel_RejectResignation: 'Payroll.ResignationRejectionNotification.',\r\n Channel_AutoTimesheetSubmission: 'TimeSheet.AutoTimeSheetSubmissionNotification.',\r\n Channel_ProbationAssignNotification: \"Probation.Assign.\",\r\n Channel_ReviewAssignToEmployeeNotification: \"Probation.ReviewAssignToEmployeeNotification.\",\r\n Channel_ReviewSubmittedByEmployeeNotification: \"Probation.ReviewSubmittedByEmployeeNotification.\",\r\n Channel_ReviewInvitationNotificationModel: \"Probation.ReviewInvitationNotificationModel.\",\r\n Channel_PerformanceReviewSubmittedByEmployeeNotification: \"Performance.PerformanceReviewSubmittedByEmployeeNotification.\",\r\n Channel_PerformanceReviewInvitationNotificationModel: \"Performance.PerformanceReviewInvitationNotificationModel.\",\r\n Channel_PerformanceReviewAssignToEmployeeNotification: \"Performance.PerformanceReviewAssignToEmployeeNotification.\",\r\n Channel_PurchaseExecutionAssignToEmployeeNotification: \"Client.PurchaseExecutionAssignToEmployeeNotification.\",\r\n}\r\n","export class AppNotification {\r\n public id: string;\r\n public notificationTypeGuid: string;\r\n public notificationSummary: string;\r\n public notificationCreatedDateTime: any;\r\n public notification: string;\r\n public icon: string = \"assignment_ind\";\r\n public route: string = \"/inbox\";\r\n public color: string = \"primary\";\r\n public isRead: boolean = false;\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.id = appNotification.Id;\r\n this.notificationTypeGuid = appNotification.NotificationTypeGuid;\r\n this.notificationSummary = appNotification.Summary;\r\n this.notificationCreatedDateTime =\r\n appNotification.CreatedDateTime;\r\n this.notification = appNotification.Notification;\r\n }\r\n}\r\n","export class SearchCriteriaInputModelBase {\r\n pageSize: number;\r\n pageNumber: number;\r\n searchText: string;\r\n isActive: boolean;\r\n isArchived: boolean;\r\n sortBy: string;\r\n sortDirectionAsc: boolean;\r\n isReportTo: boolean;\r\n}","import { SearchCriteriaInputModelBase } from './searchCriteriaInputModelBase';\r\n\r\nexport class StoreSearchModel extends SearchCriteriaInputModelBase{\r\n isDefault: boolean;\r\n isCompany: boolean;\r\n storeId: string;\r\n storeName: string;\r\n}","export class app {\r\n displayName: string;\r\n componentName: string;\r\n inputs: string[];\r\n}\r\n\r\nexport class module {\r\n path: string;\r\n moduleName: string;\r\n modulePackageName: string;\r\n moduleLazyLoadingPath: string;\r\n description: string;\r\n apps: app[];\r\n}\r\n\r\nexport class shellModulesInfo {\r\n modules: any;\r\n}","import { Injectable, Optional } from '@angular/core';\r\nimport { shellModulesInfo } from '../models/shellModulesInfo';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ShellModulesService {\r\n private _allModules : shellModulesInfo;\r\n\r\n constructor(@Optional() config: shellModulesInfo) {\r\n if (config) { this._allModules = config; }\r\n }\r\n\r\n get allModules() {\r\n return this._allModules;\r\n }\r\n}","import { Component, EventEmitter, Inject, OnInit, Output, Type, ViewEncapsulation, NgModuleRef, NgModuleFactoryLoader, ViewContainerRef, NgModuleFactory, ComponentFactoryResolver, Compiler } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport { ShellModulesService } from '../../services/shell.modules.service';\r\nimport * as _ from \"underscore\";\r\ntype ModuleWithComponentService = Type<any> & { componentService: Type<any> };\r\n\r\n@Component({\r\n selector: \"work-items-dailogue\",\r\n templateUrl: \"all-work-items-dialog.component.html\",\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class WorkItemsDialogComponent extends CustomAppBaseComponent implements OnInit {\r\n @Output() closeReportsSheetPopup = new EventEmitter<any>();\r\n\r\n private ngModuleRef: NgModuleRef<any>;\r\n allWorkitemsComponent: any;\r\n widgetListinputs: any;\r\n allWorkItemsinputs = {\r\n isPopup: true\r\n };\r\n injector: any;\r\n\r\n allWorkItemsoutputs = {\r\n closePopUp: event => this.closeDialog(event)\r\n };\r\n\r\n constructor(\r\n private projectModulesService: ShellModulesService, private compiler: Compiler,\r\n private vcr: ViewContainerRef,\r\n public reportsDialog: MatDialogRef<WorkItemsDialogComponent>,\r\n @Inject(MAT_DIALOG_DATA) public data: any, private route: ActivatedRoute) {\r\n super();\r\n }\r\n\r\n onNoClick(): void {\r\n this.reportsDialog.close();\r\n this.closeReportsSheetPopup.emit(true);\r\n }\r\n\r\n closeDialog(event) {\r\n this.reportsDialog.close();\r\n }\r\n\r\n ngOnInit() {\r\n this.injector = this.vcr.injector;\r\n super.ngOnInit();\r\n this.loadComponent();\r\n }\r\n\r\n loadComponent() {\r\n // var modules = this.shellModulesService[\"modules\"];\r\n var loader = this.projectModulesService[\"modules\"];\r\n var modules = JSON.parse(localStorage.getItem(\"Modules\"));\r\n var module = _.find(modules, function (module: any) { return module.modulePackageName == 'ProjectPackageModule' });\r\n \r\n var path = loader[module.modulePackageName];\r\n\r\n (path() as Promise<NgModuleFactory<any> | Type<any>>)\r\n .then(elementModuleOrFactory => {\r\n if (elementModuleOrFactory instanceof NgModuleFactory) {\r\n // if ViewEngine\r\n return elementModuleOrFactory;\r\n } else {\r\n try {\r\n // if Ivy\r\n return this.compiler.compileModuleAsync(elementModuleOrFactory);\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n }).then((moduleFactory: NgModuleFactory<any>) => {\r\n\r\n const componentService = (moduleFactory.moduleType as ModuleWithComponentService).componentService;\r\n\r\n var allComponentsInModule = (<any>componentService).components;\r\n\r\n this.ngModuleRef = moduleFactory.create(this.injector);\r\n\r\n var componentDetails = allComponentsInModule.find(elementInArray =>\r\n elementInArray.name === \"All work items\");\r\n\r\n this.widgetListinputs = {\r\n isFromMyWork: true,\r\n isMyWork: true\r\n }\r\n\r\n this.allWorkitemsComponent = this.ngModuleRef.componentFactoryResolver.resolveComponentFactory(componentDetails.componentTypeObject);\r\n });\r\n }\r\n\r\n}\r\n","<div class=\"custom-dialog\">\r\n <div class=\"custom-close\" mat-dialog-close (click)=\"onNoClick()\">\r\n <fa-icon icon=\"times\" class=\"project-dialog\"></fa-icon>\r\n </div>\r\n</div>\r\n<div id=\"style-1\" class=\"user-dailog\" mat-dialog-content>\r\n <ndc-dynamic [ndcDynamicFactory]=\"allWorkitemsComponent\" [ndcDynamicComponent]=\"allWorkitemsComponent\"\r\n [ndcDynamicInjector]=\"injector\"\r\n [ndcDynamicInputs]=\"widgetListinputs\" [ndcDynamicOutputs]=\"allWorkItemsoutputs\">\r\n </ndc-dynamic>\r\n</div>","import { Component, EventEmitter, Inject, OnInit, Output, Type, ViewEncapsulation, NgModuleRef, NgModuleFactoryLoader, ViewContainerRef, NgModuleFactory, ComponentFactoryResolver, Compiler } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from \"@angular/material/dialog\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport { ShellModulesService } from '../../services/shell.modules.service';\r\nimport * as _ from \"underscore\";\r\nimport { FeedtimesheetComponentProfile } from \"@snovasys/snova-timesheet\";\r\ntype ModuleWithComponentService = Type<any> & { componentService: Type<any> };\r\n\r\n@Component({\r\n selector: \"feed-time-dailogue\",\r\n templateUrl: \"feed-time-dialog.component.html\",\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class FeedTimeDialogComponent extends CustomAppBaseComponent implements OnInit {\r\n @Output() closeReportsSheetPopup = new EventEmitter<any>();\r\n\r\n outputs = {\r\n closeFeedTimeSheetPopup: () => this.onNoClick()\r\n };\r\n private ngModuleRef: NgModuleRef<any>;\r\n allWorkItemsoutputs: any;\r\n allWorkitemsComponent: any;\r\n widgetListinputs: any;\r\n componentInputs = {\r\n isFeedTimeSheet: false\r\n };\r\n injector: any;\r\n feedTimeComponent: any;\r\n\r\n constructor(\r\n private projectModulesService: ShellModulesService, private compiler: Compiler,\r\n private vcr: ViewContainerRef,\r\n public reportsDialog: MatDialogRef<FeedTimeDialogComponent>,\r\n @Inject(MAT_DIALOG_DATA) public data: any, private route: ActivatedRoute) {\r\n super();\r\n this.componentInputs = {\r\n isFeedTimeSheet: data\r\n };\r\n }\r\n\r\n onNoClick(): void {\r\n this.reportsDialog.close();\r\n this.closeReportsSheetPopup.emit(true);\r\n }\r\n\r\n ngOnInit() {\r\n this.injector = this.vcr.injector;\r\n super.ngOnInit();\r\n this.loadComponent();\r\n }\r\n\r\n loadComponent() {\r\n // var modules = this.shellModulesService[\"modules\"];\r\n var loader = this.projectModulesService[\"modules\"];\r\n var modules = JSON.parse(localStorage.getItem(\"Modules\"));\r\n var module = _.find(modules, function (module: any) { return module.modulePackageName == 'TimesheetPackageModule' });\r\n var path = loader[module.modulePackageName];\r\n\r\n (path() as Promise<NgModuleFactory<any> | Type<any>>)\r\n .then(elementModuleOrFactory => {\r\n if (elementModuleOrFactory instanceof NgModuleFactory) {\r\n // if ViewEngine\r\n return elementModuleOrFactory;\r\n } else {\r\n try {\r\n // if Ivy\r\n return this.compiler.compileModuleAsync(elementModuleOrFactory);\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n }).then((moduleFactory: NgModuleFactory<any>) => {\r\n\r\n const componentService = (moduleFactory.moduleType as ModuleWithComponentService).componentService;\r\n\r\n var allComponentsInModule = (<any>componentService).components;\r\n\r\n this.ngModuleRef = moduleFactory.create(this.injector);\r\n\r\n var componentDetails = allComponentsInModule.find(elementInArray =>\r\n elementInArray.name === \"Time punch card\"\r\n );\r\n\r\n this.feedTimeComponent = this.ngModuleRef.componentFactoryResolver.resolveComponentFactory(componentDetails.componentTypeObject);\r\n });\r\n }\r\n\r\n\r\n}\r\n","<div class=\"custom-dialog\">\r\n <div class=\"custom-close\" mat-dialog-close (click)=\"onNoClick()\">\r\n <fa-icon icon=\"times\" class=\"project-dialog\"></fa-icon>\r\n </div>\r\n</div>\r\n<div id=\"style-1\" class=\"user-dailog\" mat-dialog-content>\r\n <ndc-dynamic [ndcDynamicFactory]=\"feedTimeComponent\"\r\n [ndcDynamicComponent]=\"feedTimeComponent\" [ndcDynamicInjector]=\"injector\"\r\n [ndcDynamicInputs]=\"componentInputs\" [ndcDynamicOutputs]=\"outputs\">\r\n</ndc-dynamic>\r\n</div>","import { Guid } from \"guid-typescript\";\r\n\r\nexport class NotificationTypeIds {\r\n public static Notification_WorkItemAssignedToUser: Guid = Guid.parse(\r\n \"32184689-fd1a-4f3b-bff5-57a3febc9481\"\r\n );\r\n public static Notification_RoleUpdated: Guid = Guid.parse(\r\n \"7662113B-94D9-4665-86A9-935E3FDB2C65\"\r\n );\r\n public static Status_Report_Sumitted: Guid = Guid.parse(\r\n \"0b67af9d-2c08-481a-99d0-b4ecb334386d\"\r\n );\r\n public static Status_Report_Config_Created: Guid = Guid.parse(\r\n \"d182d572-d314-43f7-b953-b132dfc048d2\"\r\n );\r\n public static Multiple_Charts_Scheduling_created: Guid = Guid.parse(\r\n \"935f6891-9029-482d-b6d8-a0a62673e47a\"\r\n );\r\n public static Assets_Assignment: Guid = Guid.parse(\r\n \"86a845a5-8e52-4ebd-a4fa-90f7d8f5bae5\"\r\n );\r\n public static Announcement_Received: Guid = Guid.parse(\r\n \"36F28A72-D3B3-42E2-A495-FC49453BAFFB\"\r\n );\r\n public static Reminder_Notification: Guid = Guid.parse(\r\n \"A2811F64-DCE6-4FE5-BDE3-D5AD6EA4EB61\"\r\n );\r\n public static Performance_Received: Guid = Guid.parse(\r\n \"622FFD3A-8A2B-4C84-94EE-8E4CBA986650\"\r\n );\r\n public static NewProjectCreatedNotificationId : Guid = Guid.parse(\"E9C64357-492E-47D7-A98E-350FBD613F12\");\r\n public static ProjectMemberRoleAddedNotificationId : Guid = Guid.parse(\"6747F62C-1B90-4805-98B3-93DA6D8F6195\");\r\n public static GoalApprovedFromReplan : Guid = Guid.parse(\"80513474-1DD1-4A6B-8336-AFE11A7370FE\");\r\n public static USerStoryUpdateNotificationId : Guid = Guid.parse(\"E004EF10-1787-4AB3-8B31-DC48D58F68D0\");\r\n public static SprintStarted : Guid = Guid.parse(\"29C2059A-B2B6-49EC-A61B-C0D9BF4A9898\");\r\n public static PushNotificationForUserStoryComment : Guid = Guid.parse(\"5AEFF52D-4F36-414C-A3D5-BA7AA4774B18\");\r\n public static GoalRequestdForREplan : Guid = Guid.parse(\"F8B3FD7D-1A4B-4023-84E8-88CEA28DC16D\");\r\n public static SprintRequestdForREplan : Guid = Guid.parse(\"2B1D4317-EAA9-4CB2-A5A8-8F187BE6ADBC\");\r\n public static AdhocUSerStoryUpdateNotificationId : Guid = Guid.parse(\"BB04BB53-E26A-4588-B694-FB893098C61B\");\r\n public static Notification_AdhocWorkItemAssignedToUser : Guid = Guid.parse(\"D436963A-4063-421E-8C90-1ECE778E3DFF\");\r\n public static UserStoryArchive : Guid = Guid.parse(\"F6586541-471C-4657-B929-832B88E56B76\");\r\n public static UserStoryPark : Guid = Guid.parse(\"8A61EF7D-A738-46BE-BA74-71CFD6D03223\");\r\n public static ProjectFeature: Guid = Guid.parse(\"0C85E7B0-CCC1-4C4F-AF39-1942A40B4C7D\");\r\n public static GenericNotificationActivity: Guid = Guid.parse(\"750B94A6-1D1F-43F5-9843-1BB1A7ADD8AB\");\r\n public static LeaveApplication: Guid = Guid.parse(\"2ABD0FD7-5A6E-BEB5-B02A-B9D4E69DC493\");\r\n public static ApproveLeaveApplication: Guid = Guid.parse(\"A4E3ABFC-F234-474E-A3F0-4D4F692A6DC3\");\r\n public static RejectLeaveApplication: Guid = Guid.parse(\"5E9AD394-D415-40F5-8E5B-D79F3E033FB8\");\r\n public static ResignationNotification: Guid = Guid.parse(\"987A697A-6161-4BC9-8D21-14BE1189E594\");\r\n public static ResignationApprovalNotification: Guid = Guid.parse(\"8A3CAFF7-651C-45D3-BD3B-E682A5081A52\");\r\n public static ResignationRejectionNotification: Guid = Guid.parse(\"6651A770-42B0-4015-AE8B-74D162F6A7B2\");\r\n public static AutoTimeSheetSubmissionNotification: Guid = Guid.parse(\"FE3C8D88-304D-4B1D-B6A6-370E2CD25913\");\r\n public static ProbationAssignNotification: Guid = Guid.parse(\"F75527DB-AF69-4905-89B5-388789989FBE\");\r\n public static ReviewAssignToEmployeeNotification: Guid = Guid.parse(\"A1256DB2-B40A-4189-A9A4-63B5D153B0B9\");\r\n public static ReviewSubmittedByEmployeeNotification: Guid = Guid.parse(\"5E0F808D-9908-4EC2-B805-456D94419631\");\r\n public static ReviewInvitationNotification: Guid = Guid.parse(\"733DE5A1-4E8D-44D8-9F49-5079B8DF37AA\");\r\n public static PerformanceReviewSubmittedByEmployeeNotification: Guid = Guid.parse(\"A75D64FC-83BE-4BE1-9B24-BF4850F6C3AE\");\r\n public static PerformanceReviewInvitationNotificationModel: Guid = Guid.parse(\"56487941-867E-456B-9090-D076742150D6\");\r\n public static PerformanceReviewAssignToEmployeeNotification: Guid = Guid.parse(\"47DC740D-3AF7-4219-A0B1-805876CC13FC\");\r\n public static PurchaseShipmentNotificationId : Guid = Guid.parse(\"67100C98-7133-4213-AD98-30F6BEEC983C\");\r\n}\r\n","export class NotificationOutputModel {\r\n notificationId: string;\r\n notificationTypeId: string;\r\n notificationTypeName: string;\r\n featureId: string;\r\n featureName: string;\r\n notificationJson: any;\r\n summary: any;\r\n createdByUserId: string;\r\n createdDateTime: any;\r\n isRead: boolean = false;\r\n public notificationSummary: string;\r\n public notificationCreatedDateTime: any;\r\n public notification: string;\r\n public icon: string = \"assignment_ind\";\r\n public route: string = \"/inbox\";\r\n public color: string = \"primary\";\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.notificationId = appNotification.Id;\r\n this.notificationTypeId = appNotification.NotificationTypeGuid;\r\n this.notificationSummary = appNotification.Summary;\r\n this.notificationCreatedDateTime =\r\n appNotification.CreatedDateTime;\r\n this.notification = appNotification.Notification;\r\n this.notificationJson = appNotification.NotificationJson;\r\n }\r\n}\r\n\r\nexport class UserNotificationReadModel {\r\n userNotificationReadId: string;\r\n notificationId: string;\r\n userId: string;\r\n readDateTime: Date;\r\n operationsPerformedBy: string;\r\n notificationTypeId: string;\r\n notificationSummary: string;\r\n notificationJson: any;\r\n}\r\n\r\nexport class NotificationModel {\r\n id: any;\r\n notificationType: any;\r\n summary: any;\r\n createdByUserId: any;\r\n updatedByUserId: any;\r\n createdDateTime: any;\r\n updatedDateTime: any;\r\n readTime: any;\r\n inActiveDateTime: any;\r\n isArchived: any;\r\n}\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class UserStoryAssignedNotification extends NotificationOutputModel {\r\n notificationAssignedByUserGuid: string;\r\n notificationAssignedToUserGuid: string;\r\n userStoryGuid: string;\r\n userStoryName: string;\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.notificationAssignedByUserGuid =\r\n appNotification.NotificationAssignedByUserGuid;\r\n this.notificationAssignedToUserGuid =\r\n appNotification.NotificationAssignedToUserGuid;\r\n this.userStoryGuid = appNotification.UserStoryGuid;\r\n this.userStoryName = appNotification.UserStoryName;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","export const ChannelRoutes = {\r\n ViewWorkItem: '/workitem/',\r\n ViewAccount: '/account/',\r\n EditPurchaseExecution: '/account/',\r\n}","import { Guid } from \"guid-typescript\";\r\nimport { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nexport class RoleUpdatedNotification extends NotificationOutputModel {\r\n roleGuid: Guid;\r\n roleName: string;\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.roleGuid = appNotification.RoleGuid;\r\n this.roleName = appNotification.RoleName;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { Guid } from \"guid-typescript\";\r\nimport { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nexport class ReportSubmittedNotification extends NotificationOutputModel {\r\n notificationAssignedByUserGuid: Guid;\r\n notificationAssignedToUserGuid: Guid;\r\n reportId: Guid;\r\n reportName: string;\r\n submittedBy: string;\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.notificationAssignedByUserGuid = appNotification.NotificationAssignedByUserGuid;\r\n this.notificationAssignedToUserGuid = appNotification.NotificationAssignedToUserGuid;\r\n this.reportId = appNotification.ReportId;\r\n this.reportName = appNotification.ReportName;\r\n this.submittedBy = appNotification.SubmittedBy;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { Guid } from \"guid-typescript\";\r\nimport { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nexport class ReportConfigAssignedNotification extends NotificationOutputModel {\r\n notificationAssignedByUserGuid: Guid;\r\n notificationAssignedToUserGuid: Guid;\r\n reportConfigurationId: Guid;\r\n reportName: string;\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.notificationAssignedByUserGuid = appNotification.NotificationAssignedByUserGuid;\r\n this.notificationAssignedToUserGuid = appNotification.NotificationAssignedToUserGuid;\r\n this.reportConfigurationId = appNotification.ReportConfigurationId;\r\n this.reportName = appNotification.ReportName;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { Guid } from \"guid-typescript\";\r\nimport { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class MultipleChartsScheduling extends NotificationOutputModel {\r\n notificationAssignedByUserGuid: Guid;\r\n notificationAssignedToUserGuid: Guid;\r\n cronExpressionId: Guid;\r\n cronExpressionName: string;\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.notificationAssignedByUserGuid = appNotification.NotificationAssignedByUserGuid;\r\n this.notificationAssignedToUserGuid = appNotification.NotificationAssignedToUserGuid;\r\n this.cronExpressionId = appNotification.cronExpressionId;\r\n this.cronExpressionName = appNotification.ReportName;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\nexport class AssetAssignedNotification extends NotificationOutputModel {\r\n notificationAssignedByUserGuid: Guid;\r\n notificationAssignedToUserGuid: Guid;\r\n assetId : Guid;\r\n assetsNames : string;\r\n assetNumbers : string;\r\n \r\n loadFromCaseInsensitiveObject(assetNotification: any) {\r\n this.notificationAssignedByUserGuid = assetNotification.NotificationAssignedByUserGuid;\r\n this.notificationAssignedToUserGuid = assetNotification.NotificationAssignedToUserGuid;\r\n this.assetId = assetNotification.assetId;\r\n this.assetsNames = assetNotification.assetsNames;\r\n this.assetNumbers = assetNotification.assetNumbers;\r\n super.loadFromCaseInsensitiveObject(assetNotification);\r\n }\r\n }","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\nexport class NewProjectCreatedNotificationModel extends NotificationOutputModel {\r\n projectGuid: Guid;\r\n projectName: string;\r\n projectResponsiblePersonId : Guid\r\n\r\n loadFromCaseInsensitiveObject(newProjectNotification: any) {\r\n this.projectGuid= newProjectNotification.projectGuid;\r\n this.projectName= newProjectNotification.projectName;\r\n this.projectResponsiblePersonId = newProjectNotification.projectResponsiblePersonId;\r\n super.loadFromCaseInsensitiveObject(newProjectNotification);\r\n }\r\n }\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\nexport class GoalApprovedNotificationModel extends NotificationOutputModel {\r\n goalId: Guid;\r\n goalName: string;\r\n projectResponsiblePersonId : Guid\r\n\r\n loadFromCaseInsensitiveObject(newProjectNotification: any) {\r\n this.goalId= newProjectNotification.goalId;\r\n this.goalName= newProjectNotification.goalName;\r\n super.loadFromCaseInsensitiveObject(newProjectNotification);\r\n }\r\n }\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class UserStoryUpdateNotificationModel extends NotificationOutputModel {\r\n userStoryId: string;\r\n userStoryName: string;\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.userStoryId = appNotification.UserStoryGuid;\r\n this.userStoryName = appNotification.UserStoryName;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class UserStoryCommentNotificationModel extends NotificationOutputModel {\r\n userStoryId: string;\r\n userStoryName: string;\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.userStoryId = appNotification.UserStoryGuid;\r\n this.userStoryName = appNotification.UserStoryName;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\nexport class SprintStartedNotificationModel extends NotificationOutputModel {\r\n sprintGuid: Guid;\r\n sprintName: string;\r\n \r\n loadFromCaseInsensitiveObject(newProjectNotification: any) {\r\n this.sprintGuid= newProjectNotification.sprintGuid;\r\n this.sprintName= newProjectNotification.sprintName;\r\n super.loadFromCaseInsensitiveObject(newProjectNotification);\r\n }\r\n }\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\nexport class SprintReplanStartedNotificationModel extends NotificationOutputModel {\r\n sprintGuid: Guid;\r\n sprintName: string;\r\n \r\n loadFromCaseInsensitiveObject(newProjectNotification: any) {\r\n this.sprintGuid = newProjectNotification.sprintGuid;\r\n this.sprintName= newProjectNotification.sprintName;\r\n super.loadFromCaseInsensitiveObject(newProjectNotification);\r\n }\r\n }\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\nimport { Guid } from \"guid-typescript\";\r\n\r\nexport class NewProjectFeatureCreatedNotificationModel extends NotificationOutputModel {\r\n projectFeatureId: Guid;\r\n projectFeatureName: string;\r\n projectFeatureResponsiblePersonId : Guid\r\n\r\n loadFromCaseInsensitiveObject(newProjectNotification: any) {\r\n this.projectFeatureId= newProjectNotification.ProjectFeatureId;\r\n this.projectFeatureName= newProjectNotification.ProjectFeatureName;\r\n this.projectFeatureResponsiblePersonId = newProjectNotification.ProjectId;\r\n super.loadFromCaseInsensitiveObject(newProjectNotification);\r\n }\r\n }\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class UserStoryArchiveNotificationModel extends NotificationOutputModel {\r\n userStoryId: string;\r\n userStoryName: string;\r\n ownerGuid: string;\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.userStoryId = appNotification.UserStoryGuid;\r\n this.userStoryName = appNotification.UserStoryName;\r\n this.ownerGuid = appNotification.UserStoryOwnerId;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class UserStoryParkNotificationModel extends NotificationOutputModel {\r\n userStoryId: string;\r\n userStoryName: string;\r\n ownerGuid: string;\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.userStoryId = appNotification.UserStoryGuid;\r\n this.userStoryName = appNotification.UserStoryName;\r\n this.ownerGuid = appNotification.UserStoryOwnerId;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","export class ExportConfigurationModel {\r\n isExportConfiguration: boolean;\r\n isExportDashboard: boolean;\r\n isExportData: boolean;\r\n workspaceIds: any[];\r\n exportDataModelIds: any[];\r\n exportDataModelNames : any[];\r\n}","import { Component, OnInit, Inject, ViewChild } from \"@angular/core\";\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport { Actions } from \"@ngrx/effects\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { Subject, Observable } from \"rxjs\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { CommonService } from '../../services/common-used.service';\r\nimport { WorkspaceList } from '../../models/workspaceList';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ExportConfigurationModel } from '../../models/export-configuration-model';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ExportDataModel } from '../../models/export-data.module';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\n@Component({\r\n selector: \"export-configuration-dialog\",\r\n templateUrl: \"./export-configuration-dialog.component.html\"\r\n})\r\n\r\nexport class ExportConfigurationDialogComponent implements OnInit {\r\n\r\n @ViewChild(\"allModuleSelected\") private allModuleSelected: MatOption;\r\n @ViewChild(\"allDataSelected\") private allDataSelected: MatOption;\r\n\r\n public ngDestroyed$ = new Subject();\r\n workspacesfetchInProgress: boolean = false;\r\n workspacesList$: Observable<WorkspaceList[]>;\r\n workspaces: WorkspaceList[];\r\n exportDataLoading: boolean = false;\r\n exportForm: FormGroup;\r\n selectedWorkSpaceIds: string[] = [];\r\n dataIds: string[] = [];\r\n selectedDataIds: any;\r\n exportDataModelNames: string[] = [];\r\n selectedExportDataModelNames: any;\r\n private setting = {\r\n element: {\r\n dynamicDownload: null as HTMLElement\r\n }\r\n }\r\n\r\n exportDataModel: ExportDataModel[] = [\r\n {\r\n id: 1,\r\n displayName: 'Form types',\r\n modelName: 'FormTypes'\r\n },\r\n {\r\n id: 2,\r\n displayName: 'Roles',\r\n modelName: 'Roles'\r\n },\r\n {\r\n id: 3,\r\n displayName: 'Entity roles',\r\n modelName: 'EntityRoleOutputModels'\r\n },\r\n {\r\n id: 4,\r\n displayName: 'Work item types',\r\n modelName: 'WorkItemTypes'\r\n },\r\n {\r\n id: 5,\r\n displayName: 'Board type apis',\r\n modelName: 'BoardTypeApis'\r\n },\r\n {\r\n id: 6,\r\n displayName: 'Board types',\r\n modelName: 'BoardTypes'\r\n },\r\n {\r\n id: 7,\r\n displayName: 'Work item statuses',\r\n modelName: 'WorkItemStatuses'\r\n },\r\n {\r\n id: 8,\r\n displayName: 'Work item sub types',\r\n modelName: 'WorkItemSubTypes'\r\n },\r\n {\r\n id: 9,\r\n displayName: 'Project types',\r\n modelName: 'ProjectTypes'\r\n },\r\n {\r\n id: 10,\r\n displayName: 'WorkFlow and status',\r\n modelName: 'WorkFlowAndStatusModel'\r\n },\r\n {\r\n id: 11,\r\n displayName: 'Projects',\r\n modelName: 'Projects'\r\n },\r\n {\r\n id: 12,\r\n displayName: 'Goals',\r\n modelName: 'GoalTemplates'\r\n },\r\n {\r\n id: 13,\r\n displayName: 'User stories',\r\n modelName: 'TemplateUserStories'\r\n },\r\n {\r\n id: 14,\r\n displayName: 'Master question types',\r\n modelName: 'MasterQuestionTypes'\r\n },\r\n {\r\n id: 15,\r\n displayName: 'Question types',\r\n modelName: 'QuestionTypes'\r\n },\r\n {\r\n id: 16,\r\n displayName: 'Audits',\r\n modelName: 'AuditsList'\r\n },\r\n {\r\n id: 17,\r\n displayName: 'Audit categories',\r\n modelName: 'AuditCategories'\r\n },\r\n {\r\n id: 18,\r\n displayName: 'Audit category questions',\r\n modelName: 'AuditCategoryQuestions'\r\n },\r\n {\r\n id: 19,\r\n displayName: 'Payroll components',\r\n modelName: 'PayrollComponents'\r\n },\r\n {\r\n id: 20,\r\n displayName: 'Payroll templates',\r\n modelName: 'PayrollTemplates'\r\n }, {\r\n id: 21,\r\n displayName: 'Payroll template configurations',\r\n modelName: 'PayrollTemplateConfigurations'\r\n },\r\n {\r\n id: 22,\r\n displayName: 'Professional tax range',\r\n modelName: 'ProfessionalTaxRange'\r\n },\r\n {\r\n id: 23,\r\n displayName: 'Tax slabs',\r\n modelName: 'TaxSlabs'\r\n },\r\n {\r\n id: 24,\r\n displayName: 'Custom fields',\r\n modelName: 'CustomFields'\r\n },\r\n {\r\n id: 26,\r\n displayName: 'System apps',\r\n modelName: 'SystemApps'\r\n },\r\n {\r\n id: 27,\r\n displayName: 'Custom apps',\r\n modelName: 'CustomApps'\r\n }\r\n ].sort((a, b) => a.displayName.localeCompare(b.displayName));\r\n\r\n constructor(public dialogRef: MatDialogRef<ExportConfigurationDialogComponent>, private route: ActivatedRoute,\r\n private store: Store<State>, private actionUpdates$: Actions, private router: Router,\r\n private commonService: CommonService,\r\n private toaster: ToastrService,\r\n private cookieService: CookieService,\r\n @Inject(MAT_DIALOG_DATA) public data: any) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.loadWorkspacesList();\r\n this.clearForm()\r\n }\r\n\r\n CancelExportDialog() {\r\n this.dialogRef.close({ delete: false });\r\n }\r\n loadWorkspacesList() {\r\n this.workspacesfetchInProgress = true;\r\n var workSpaceList = new WorkspaceList();\r\n workSpaceList.workspaceId = \"null\";\r\n this.commonService.GetWorkspaceList(workSpaceList).subscribe((result: any) => {\r\n this.workspaces = result.data;\r\n this.workspacesfetchInProgress = false;\r\n });\r\n };\r\n\r\n ExportData() {\r\n this.exportDataLoading = true;\r\n var exportConfigurationModel = new ExportConfigurationModel();\r\n exportConfigurationModel.isExportDashboard = this.exportForm.get(\"isExportDashboard\").value;\r\n exportConfigurationModel.isExportConfiguration = this.exportForm.get(\"isExportConfiguration\").value;\r\n exportConfigurationModel.isExportData = this.exportForm.get(\"isExportData\").value;\r\n exportConfigurationModel.workspaceIds = this.exportForm.get(\"workspaceIds\").value;\r\n exportConfigurationModel.exportDataModelIds = this.exportForm.get(\"exportDataModelIds\").value;\r\n this.commonService.GetExportData(exportConfigurationModel).subscribe((response: any) => {\r\n if (response.success === true) {\r\n this.dynamicDownloadJson(response);\r\n }\r\n else {\r\n this.toaster.error(response.apiResponseMessages[0].message);\r\n }\r\n this.exportDataLoading = false;\r\n });\r\n\r\n }\r\n\r\n toggleWorkspacePerOne() {\r\n if (this.allModuleSelected.selected) {\r\n this.allModuleSelected.deselect();\r\n return false;\r\n }\r\n if (\r\n this.exportForm.get(\"workspaceIds\").value.length === this.workspaces.length\r\n ) {\r\n this.allModuleSelected.select();\r\n }\r\n }\r\n\r\n toggleAllWorkSpaceSelected() {\r\n if (this.allModuleSelected.selected && this.workspaces) {\r\n this.exportForm.get(\"workspaceIds\").patchValue([\r\n ...this.workspaces.map((item) => item.workspaceId),\r\n 0\r\n ]);\r\n this.selectedWorkSpaceIds = this.workspaces.map((item) => item.workspaceId);\r\n } else {\r\n this.exportForm.get(\"workspaceIds\").patchValue([]);\r\n }\r\n }\r\n\r\n compareSelectedWorkspaceFn(workspacesList: any, workspaceId: any) {\r\n if (workspacesList === workspaceId) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n toggleExportDataModelIdsPerOne() {\r\n if (this.allDataSelected.selected) {\r\n this.allDataSelected.deselect();\r\n return false;\r\n }\r\n if (\r\n this.exportForm.get(\"exportDataModelIds\").value.length === this.exportDataModel.length\r\n ) {\r\n this.allDataSelected.select();\r\n }\r\n }\r\n\r\n toggleAllExportDataModelIdsSelected() {\r\n if (this.allDataSelected.selected && this.exportDataModel) {\r\n this.exportForm.get(\"exportDataModelIds\").patchValue([\r\n ...this.exportDataModel.map((item) => item.id),\r\n 0\r\n ]);\r\n this.selectedDataIds = this.exportDataModel.map((item) => item.id);\r\n this.selectedExportDataModelNames = this.exportDataModel.map((item) => item.modelName);\r\n } else {\r\n this.exportForm.get(\"exportDataModelIds\").patchValue([]);\r\n }\r\n }\r\n\r\n compareSelectedExportDataModelIdsFn(dataList: any, dataId: any) {\r\n if (dataList === dataId) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n clearForm() {\r\n this.exportForm = new FormGroup({\r\n workspaceIds: new FormControl(null,\r\n Validators.compose([])\r\n ),\r\n isExportConfiguration: new FormControl(null,\r\n Validators.compose([])\r\n ),\r\n isExportDashboard: new FormControl(null,\r\n Validators.compose([])\r\n ),\r\n isExportData: new FormControl(null,\r\n Validators.compose([])\r\n ),\r\n exportDataModelNames: new FormControl(null,\r\n Validators.compose([])\r\n ),\r\n exportDataModelIds: new FormControl(null,\r\n Validators.compose([])\r\n ),\r\n });\r\n }\r\n\r\n selectedWorkspaces() {\r\n if (this.exportForm.get(\"isExportDashboard\").value) {\r\n this.exportForm.get(\"workspaceIds\").patchValue([\r\n ...this.workspaces.map((item) => item.workspaceId),\r\n 0\r\n ]);\r\n }\r\n else {\r\n this.exportForm.get(\"workspaceIds\").patchValue([]);\r\n }\r\n\r\n }\r\n\r\n selectedData() {\r\n if (this.exportForm.get(\"isExportData\").value) {\r\n this.exportForm.get(\"exportDataModelIds\").patchValue([\r\n ...this.exportDataModel.map((item) => item.id),\r\n 0\r\n ]);\r\n }\r\n else {\r\n this.exportForm.get(\"exportDataModelIds\").patchValue([]);\r\n }\r\n\r\n }\r\n\r\n dynamicDownloadJson(responseData) {\r\n let companyName = this.cookieService.get(LocalStorageProperties.CompanyName);\r\n if (companyName == null)\r\n companyName = 'My report';\r\n this.dynamicDownloadByHtmlTag({\r\n fileName: companyName + '.json',\r\n text: JSON.stringify(responseData)\r\n });\r\n }\r\n\r\n private dynamicDownloadByHtmlTag(arg: {\r\n fileName: string,\r\n text: string\r\n }) {\r\n if (!this.setting.element.dynamicDownload) {\r\n this.setting.element.dynamicDownload = document.createElement('a');\r\n }\r\n const element = this.setting.element.dynamicDownload;\r\n const fileType = arg.fileName.indexOf('.json') > -1 ? 'text/json' : 'text/plain';\r\n element.setAttribute('href', `data:${fileType};charset=utf-8,${encodeURIComponent(arg.text)}`);\r\n element.setAttribute('download', arg.fileName);\r\n\r\n var event = new MouseEvent(\"click\");\r\n element.dispatchEvent(event);\r\n this.toaster.success(\"Configure data exported successfully\");\r\n this.CancelExportDialog();\r\n }\r\n\r\n checkExportIsConfigure() {\r\n var dataIds = this.exportForm.get(\"exportDataModelIds\").value;\r\n var dashboardIds = this.exportForm.get(\"workspaceIds\").value;\r\n if ((this.exportForm.get(\"isExportDashboard\").value || (dashboardIds != undefined && dashboardIds.length > 0)) || this.exportForm.get(\"isExportConfiguration\").value || (this.exportForm.get(\"isExportData\").value || (dataIds != undefined && dataIds.length > 0)))\r\n return false;\r\n else\r\n return true;\r\n\r\n }\r\n\r\n}\r\n","<mat-card-content class=\"text-center\">\r\n <div class=\"card-title-text mb-1\" style=\"font-size:30px;color: gray\">{{ 'SHELL.EXPORTSTEXT' | translate}}</div>\r\n</mat-card-content>\r\n<form [formGroup]=\"exportForm\" novalidate fxLayout='column'>\r\n <div fxFlex fxLayout=\"row wrap\">\r\n <mat-checkbox formControlName=\"isExportConfiguration\" class=\"ml-1\">\r\n {{ 'SHELL.EXPORTCONFIGURATIONTEXT' |translate }}\r\n </mat-checkbox>\r\n </div>\r\n <div fxFlex fxLayout=\"row wrap\">\r\n <mat-checkbox formControlName=\"isExportDashboard\" class=\"ml-1\" (change)=\"selectedWorkspaces()\">\r\n {{ 'SHELL.EXPORTDASHBOARDSTEXT' |translate }}\r\n </mat-checkbox>\r\n </div>\r\n <div fxFlex=\"90\" fxLayout=\"row wrap\" align-content=\"flex-center\" style=\"position: relative;padding-left: 40px;\"\r\n class=\"roles-icon\">\r\n <mat-form-field class=\"full-width\" (click)=\"$event.stopPropagation();\">\r\n <mat-select formControlName=\"workspaceIds\" [compareWith]=\"compareSelectedWorkspaceFn\"\r\n placeholder=\"{{ 'SHELL.WORKSPACETEXT' | translate }}\" multiple>\r\n <mat-option #allModuleSelected (click)=\"toggleAllWorkSpaceSelected()\" [value]=\"0\">\r\n {{ 'PERMISSIONMANAGEMENT.SELECTALL' | translate }}</mat-option>\r\n <mat-option [value]=\"workspace.workspaceId\" *ngFor=\"let workspace of workspaces; let i = index\"\r\n #allModuleSelected (click)=\"toggleWorkspacePerOne()\">\r\n {{ workspace.workspaceName }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div fxFlex fxLayout=\"row wrap\">\r\n <mat-checkbox formControlName=\"isExportData\" class=\"ml-1\" (change)=\"selectedData()\">\r\n {{'SHELL.EXPORTDATATEXT' | translate }}\r\n </mat-checkbox>\r\n </div>\r\n <div fxFlex=\"90\" fxLayout=\"row wrap\" align-content=\"flex-center\" style=\"position: relative;padding-left: 40px;\"\r\n class=\"roles-icon\">\r\n <mat-form-field class=\"full-width\" (click)=\"$event.stopPropagation();\">\r\n <mat-select formControlName=\"exportDataModelIds\" [compareWith]=\"compareSelectedExportDataModelIdsFn\"\r\n placeholder=\"{{ 'SHELL.DATATEXT' | translate }}\" multiple>\r\n <mat-option #allDataSelected (click)=\"toggleAllExportDataModelIdsSelected()\" [value]=\"0\">\r\n {{ 'PERMISSIONMANAGEMENT.SELECTALL' | translate }}</mat-option>\r\n <mat-option [value]=\"exportData.id\" *ngFor=\"let exportData of exportDataModel\" #allDataSelected\r\n (click)=\"toggleExportDataModelIdsPerOne()\">\r\n {{ exportData.displayName }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"text-center mt-1\">\r\n <button class=\"mr-1\" mat-button mat-raised-button color=\"primary\" (click)=\"ExportData()\"\r\n [disabled]=\"checkExportIsConfigure()\">\r\n <fa-icon class=\"mr-05\" icon=\"download\"></fa-icon> {{ 'SHELL.EXPORTTEXT' | translate }}\r\n <i class=\"fa fa-spin fa-spinner\" *ngIf=\"exportDataLoading\"></i>\r\n </button>\r\n <button mat-button mat-raised-button (click)=\"CancelExportDialog()\">\r\n <fa-icon class=\"mr-05\" icon=\"times\"></fa-icon> {{ 'ASSETS.CANCEL' | translate }}\r\n </button>\r\n </div>\r\n</form>","export const AvailableLangs ={ \r\n languages: [\r\n {\r\n name: \"English\",\r\n code: \"en\",\r\n surname: \"Eng\"\r\n },\r\n {\r\n name: \"తెలుగు\",\r\n code: \"te\",\r\n surname: \"తెలు\"\r\n },\r\n {\r\n name: \"한국어\",\r\n code: \"ko\",\r\n surname: \"한국어\"\r\n },\r\n {\r\n name: \"عربى\",\r\n code: \"ar\",\r\n surname: \"عربى\"\r\n }\r\n ]\r\n}","export class ImportConfigurationModel {\r\n configurationUrl : string;\r\n}","export class MessageTypingDetails {\r\n state: string;\r\n pubnubChannelNameOfReceiver: Array<string>;\r\n channel: string;\r\n message: string;\r\n publisher: string;\r\n subscription: string;\r\n timetoken:string;\r\n\r\n}","export class IntroModel{\r\n userId : any;\r\n}","import { Guid } from \"guid-typescript\";\r\nimport { NotificationOutputModel } from \"./NotificationsOutPutModel\";\r\n\r\nexport class LeaveApplicationNotification extends NotificationOutputModel {\r\n notificationAssignedByUserGuid: Guid;\r\n notificationAssignedToUserGuid: Guid;\r\n\r\n loadFromCaseInsensitiveObject(appNotification: any) {\r\n this.notificationAssignedByUserGuid = appNotification.NotificationAssignedByUserGuid;\r\n this.notificationAssignedToUserGuid = appNotification.NotificationAssignedToUserGuid;\r\n super.loadFromCaseInsensitiveObject(appNotification);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { map } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { ApiUrls } from '../constants/api-urls';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root' \r\n})\r\nexport class ChatService {\r\n constructor(private httpClient:HttpClient) {\r\n \r\n }\r\n environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n APIEndpoint = this.environment.apiURL;\r\n getRecentChannelMessages(){\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n return this.httpClient.get<any>(this.APIEndpoint+\"api/ChatApi/GetRecentChannelMessages\", httpOptions) \r\n .pipe(map(result => {\r\n return result;\r\n }))\r\n }\r\n\r\n getRecentIndividualMessages(){\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n return this.httpClient.get<any>(this.APIEndpoint+\"api/ChatApi/GetRecentIndividualMessages\", httpOptions) \r\n .pipe(map(result => {\r\n return result;\r\n }))\r\n }\r\n \r\n getPubnubKeys(): Observable<any> {\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n return this.httpClient.get(this.APIEndpoint+\"api/ChatApi/GetPubnubKeys\", httpOptions) \r\n .pipe(map(result => {\r\n return result;\r\n }))\r\n }\r\n \r\n\r\n getAllUsersForSlackApp(): Observable<any> {\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n return this.httpClient.post(this.APIEndpoint+\"User/UsersApi/GetAllUsersForSlackApp\", httpOptions) \r\n .pipe(map(result => {\r\n return result;\r\n }))\r\n }\r\n\r\n getUserChannels(): Observable<any> {\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n return this.httpClient.post(this.APIEndpoint+ \"api/ChatApi/GetUserChannels\", httpOptions) \r\n .pipe(map(result => {\r\n return result;\r\n }))\r\n }\r\n\r\n}\r\n","export enum SearchTaskType {\r\n goal = 1,\r\n workItemORBug = 2,\r\n sprint = 3,\r\n adhoc = 4,\r\n Project = 5,\r\n Employee = 6\r\n}","import { SearchCriteriaInputModelBase } from './searchCriteriaInputModelBase';\r\n\r\nexport class EmployeeListModel extends SearchCriteriaInputModelBase {\r\n employmentStatusId: string;\r\n employmentStatusName: string;\r\n departmentId: string;\r\n designationId: string;\r\n designationName: string;\r\n employeeId: string;\r\n fullName: string;\r\n userId: string;\r\n employeeNumber: string;\r\n genderId: string;\r\n gender: string;\r\n maritalStatusId: string;\r\n maritalStatus: string;\r\n nationalityId: string;\r\n nationality: string;\r\n dateOfBirth: Date;\r\n smoker: boolean;\r\n militaryService: boolean;\r\n nickName: string;\r\n taxCode: string;\r\n branchId: string;\r\n entityId : string;\r\n branchName: string;\r\n roleIds: any[];\r\n permittedBranches:any;\r\n roleName: string;\r\n timeZoneId: string;\r\n timeZoneName: string;\r\n mobileNo: string;\r\n isTerminated: boolean;\r\n isActive: boolean;\r\n isActiveOnMobile: boolean;\r\n firstName: string;\r\n surName: string;\r\n userName: string;\r\n email: string;\r\n profileImage: string;\r\n createdDateTime: Date;\r\n lastConnection: Date;\r\n registeredDateTime: Date;\r\n timeStamp: any;\r\n totalCount: number;\r\n isArchived: boolean;\r\n emailSearchText: string;\r\n lineManagerId: string;\r\n jobCategoryId: string;\r\n dateOfJoining: Date;\r\n isUpsertEmployee: boolean;\r\n jobCategoryType: string;\r\n shiftTimingId: string;\r\n SpName: string;\r\n pageNo: number;\r\n pageSize: number;\r\n macAddress: string;\r\n employeeShiftId: string;\r\n ipNumber: string;\r\n searchText: string;\r\n}","export class EmployeeListInput { \r\n UserId: string; \r\n UserName: string; \r\n RoleId: string; \r\n IsUsersPage: boolean; \r\n isActive: boolean; \r\n sortDirectionAsc : boolean; \r\n }","import { SearchCriteriaInputModelBase } from \"../models/searchCriteriaInputModelBase\";\r\n\r\nexport class WidgetList extends SearchCriteriaInputModelBase{\r\n id: number;\r\n widgetId: string;\r\n widgetName: string;\r\n isCustomWidget: boolean;\r\n isArchived: boolean;\r\n isReplaceTags: boolean;\r\n timeStamp: any;\r\n tags: string;\r\n isHtml: boolean;\r\n isProc:boolean;\r\n procName:string;\r\n widgetTags: WidgetTag[];\r\n workSpaceNames: string;\r\n widgetWorkSpaces: string[];\r\n isProcess : boolean;\r\n isEntryApp : boolean;\r\n isPublished : boolean;\r\n isEditable: boolean;\r\n totalCount: number;\r\n tagId: string;\r\n isFavouriteWidget: boolean;\r\n}\r\n\r\nexport class WidgetTag {\r\n tagId: string;\r\n tagName: string;\r\n}\r\n","export enum RecentSearchType {\r\n menu = 1,\r\n dashboard = 2,\r\n widget = 3,\r\n employee = 4,\r\n project = 5,\r\n workItemOrBug = 6,\r\n adhoc = 7,\r\n goal = 8,\r\n sprint = 9\r\n}","import { Injectable } from \"@angular/core\";\r\nimport {\r\n HttpHeaders,\r\n HttpClient,\r\n HttpParams\r\n} from \"@angular/common/http\";\r\nimport { Subscription, Observable } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { RecentSearchModel, SearchTaskTypeModel } from \"../models/RecentSearchModel\";\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { RecentSearchApiModel } from '../models/recentSearchApiModel';\r\n\r\nconst httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n};\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\n\r\nexport class RecentSearchService {\r\n constructor(private http: HttpClient) { }\r\n\r\n // insertRecentSearch(search: string) {\r\n // let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n // let APIEndpoint = environment.apiURL;\r\n // return this.http.post(APIEndpoint + \"RecentSearch/RecentSearchApi/InsertRecentSearch\" + \"?search=\" + search, httpOptions);\r\n // }\r\n\r\n getSearchMenuItems(search: any) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n let data = new HttpParams();\r\n data = data.append('ItemId', search.itemId);\r\n data = data.append('SearchText', search.searchText);\r\n data = data.append('SearchUniqueId', search.searchUniqueId);\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n params: data\r\n };\r\n return this.http.get<any[]>(APIEndpoint + \"RecentSearch/RecentSearchApi/GetSearchMenuItems\", httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n insertRecentSearch(search: RecentSearchApiModel) {\r\n\t\tconst httpOptions = {\r\n\t\t\theaders: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n\t\t };\r\n\t\tlet environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n\t\tlet APIEndpoint = environment.apiURL;\r\n\t\tlet body = JSON.stringify(search);\r\n\t\t// return this._http.post(APIEndpoint + \"RecentSearch/RecentSearchApi/InsertRecentSearch\" + \"?search=\" + search.name\r\n\t\t// + \"?searchType=\" + search.recentSearchType, httpOptions);\r\n\t\treturn this.http.post(APIEndpoint + \"RecentSearch/RecentSearchApi/InsertRecentSearch\",body, httpOptions)\r\n\t\t\t.pipe(map(result => {\r\n\t\t\t\treturn result;\r\n\t\t\t}));\r\n\t }\r\n\r\n getRecentSearch(): Observable<RecentSearchModel[]> {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n return this.http.get<any[]>(APIEndpoint + \"RecentSearch/RecentSearchApi/GetRecentSearch\", httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n searchGoalTasks(searchText: string): Observable<SearchTaskTypeModel[]> {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n params: new HttpParams().set('searchText', searchText)\r\n };\r\n return this.http.get<SearchTaskTypeModel[]>(APIEndpoint + \"RecentSearch/RecentSearchApi/SearchGoalTasks\", httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n searchMenuData(retrieveDashboards: boolean) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" }),\r\n params: new HttpParams().set('getDashboards', retrieveDashboards.toString())\r\n };\r\n return this.http.get(APIEndpoint + \"RecentSearch/RecentSearchApi/GetSearchMenuData\", httpOptions)\r\n .pipe(map(result => {\r\n return result;\r\n }));\r\n }\r\n\r\n}","import { Pipe, PipeTransform, Injectable } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'highLightText'\r\n})\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class HighLightTextPipe implements PipeTransform {\r\n transform(value: string, searchText: string): string {\r\n if ( searchText == null || searchText == \"\")\r\n {\r\n return value;\r\n }\r\n const regex = new RegExp(searchText, 'gi');\r\n return value.replace(regex, (match) => `<strong>${match.replace(/\\*/g,'')}</strong>`);\r\n }\r\n}\r\n","import { Component, ViewChildren, ViewChild, TemplateRef, Input, Output, EventEmitter, ElementRef, OnInit, HostListener, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { take, takeUntil, debounceTime, distinctUntilChanged } from \"rxjs/operators\";\r\nimport { Store, select } from \"@ngrx/store\";\r\n// import { State } from \"app/shared/store/reducers/menuitems.reducers\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport * as sharedModuleReducers from \"./../../store/reducers/index\";\r\nimport { tap } from \"rxjs/operators\";\r\nimport { GetAllMenuItemsTriggered } from \"../../store/actions/menuitems.actions\";\r\nimport { MatMenuTrigger } from \"@angular/material/menu\";\r\nimport { MatInput } from \"@angular/material/input\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { ActivatedRoute, Router, NavigationEnd } from \"@angular/router\";\r\nimport { Location } from \"@angular/common\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatSnackBar } from \"@angular/material/snack-bar\";\r\nimport { RecentSearchService } from \"../../services/recentSearch.service\";\r\nimport * as moment from \"moment\";\r\nimport { AuthenticationActionTypes, GetCompanyThemeTriggered } from \"../../store/actions/authentication.actions\";\r\nimport { ofType, Actions } from \"@ngrx/effects\";\r\nimport { SearchTaskType } from \"./searchTask.enum\";\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { SatPopover } from '@ncstate/sat-popover';\r\nimport * as _ from 'underscore';\r\nimport { CommonService } from '../../services/common-used.service';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { EmployeeListModel } from '../../models/employee';\r\nimport { EmployeeListInput } from '../../models/employee-List';\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport { SoftLabelConfigurationModel } from '../../models/softlabels-model';\r\nimport { IMenuItem } from '../../models/IMenuItem';\r\nimport { UserStory } from '../../models/userStory';\r\nimport { WidgetList } from '../../models/widgetlist';\r\nimport { DragedWidget } from '../../models/dragedWidget';\r\nimport { WorkspaceList } from '../../models/workspaceList';\r\nimport { RecentSearchModel, SearchTaskTypeModel } from '../../models/RecentSearchModel';\r\nimport { ThemeModel } from '../../models/themes.model';\r\nimport { WINDOW } from '../../../globaldependencies/helpers/window.helper';\r\nimport { ThemeService } from '../../services/theme.service';\r\nimport { GoogleAnalyticsService } from '../../services/google-analytics.service';\r\nimport { ProjectSearchCriteriaInputModel } from '../../models/ProjectSearchCriteriaInputModel';\r\nimport { MenuCategories } from '../../constants/menu-categories';\r\nimport { FeatureIds } from '../../../globaldependencies/constants/feature-ids';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { RecentSearchType } from '../../enum/recentSearchType.enum';\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { trigger, style, animate, transition } from '@angular/animations';\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { AuthenticationService } from \"../../services/authentication.service\";\r\n\r\n/** @dynamic */\r\n\r\n@Component({\r\n selector: \"app-menu\",\r\n templateUrl: \"./menu.component.html\"\r\n})\r\n\r\nexport class MenuComponent extends CustomAppBaseComponent implements OnInit {\r\n [x: string]: any;\r\n\r\n @ViewChildren(\"openMenuPopUp\") openMenuPopOver;\r\n @ViewChild(\"menuTrigger\") menuTrigger: MatMenuTrigger;\r\n @ViewChild(\"element\") element: ElementRef;\r\n @ViewChild(\"workspaceElement\") workspaceElement: ElementRef;\r\n @ViewChild(\"menuElement\") menuElement: ElementRef;\r\n @ViewChild(\"addWorkspace\") addWorkSpacePopOver: SatPopover;\r\n @ViewChild(\"allSelected\") private allSelected: MatOption;\r\n @ViewChild(\"allEditSelected\") private allEditSelected: MatOption;\r\n @ViewChild(\"allDeleteSelected\") private allDeleteSelected: MatOption;\r\n @ViewChild('infoPopOver') infoPopOver: TemplateRef<any>\r\n @Output() isOpened = new EventEmitter<any>();\r\n @Output() openNewDashboard = new EventEmitter<string>();\r\n e: Element;\r\n searchText: string;\r\n focus: boolean = false;\r\n softLabels: SoftLabelConfigurationModel[];\r\n public menuItems$: Observable<IMenuItem[]>;\r\n userStoriesList$: Observable<UserStory[]>;\r\n menuItem: IMenuItem[];\r\n items = [];\r\n menuItemName: string = \"\";\r\n widgets: WidgetList[];\r\n originalWidgets: WidgetList[];\r\n selectedList: DragedWidget[];\r\n widget: WidgetList;\r\n selectedApps: any;\r\n url: string;\r\n selectedDashboard: any;\r\n defaultDashboard: any;\r\n subLevels: string[] = [];\r\n stateLvl1: string;\r\n level3Link1: string;\r\n level3Link2: string;\r\n subLevelsForLevel2: string;\r\n companyMainLogo: string;\r\n companyMiniLogo: string;\r\n rolesDropDown: any[];\r\n workspacesList$: Observable<WorkspaceList[]>;\r\n workspaces: WorkspaceList[];\r\n workspacesForLoop: any;\r\n display: boolean;\r\n adminTools: any = [];\r\n tools: any;\r\n selectedRowIndex: any;\r\n itemClicked: any;\r\n t: any;\r\n wd: any;\r\n ws: any;\r\n rs: any;\r\n allsearches: RecentSearchModel[] = [];\r\n recentSearches: RecentSearchModel[] = [];\r\n projectRoleText: string = \"Project role configuration\";\r\n canAccess_feature_AddOrUpdateApplications: Boolean;\r\n canAccess_feature_AddOrUpdateForm: Boolean;\r\n canAccess_feature_ViewForms: Boolean;\r\n canAccess_feature_ManageProjectRolePermissions: Boolean;\r\n canAccess_feature_ViewRoles: Boolean;\r\n canAccess_feature_AddOrUpdateApplications$: Observable<Boolean>;\r\n canAccess_feature_AddOrUpdateForm$: Observable<Boolean>;\r\n canAccess_feature_ViewForms$: Observable<Boolean>\r\n canAccess_feature_ManageProjectRolePermissions$: Observable<Boolean>\r\n canAccess_feature_ViewRoles$: Observable<Boolean>;\r\n companySettingsMOdel$: Observable<any[]>;\r\n disableWorkspace = false;\r\n disableWorkspaceDelete = false;\r\n disableWorkspacehide = false;\r\n forms: any;\r\n custapp: any;\r\n projectRoleConfiguration: any;\r\n roleConfiguration: any;\r\n themeModel: ThemeModel;\r\n employeeList: any[] = [];\r\n themeModel$: Observable<ThemeModel>;\r\n themeBaseColor: string;\r\n selectedEmployee: string;\r\n loadedEmployeeList: EmployeeListModel[] = [];\r\n selectedEmployeeIndex: number = null;\r\n viewEmployeePermission: boolean;\r\n canAccess_feature_CanEditOtherEmployeeDetails: Boolean;\r\n projectList: any = [];\r\n projectIndex: any;\r\n searchByTextLoading: boolean;\r\n @Input(\"reload\")\r\n set reloadAll(data: boolean) {\r\n if (data) {\r\n this.adminTools = [];\r\n this.tools = [];\r\n this.ngOnInit();\r\n }\r\n }\r\n public ngDestroyed$ = new Subject();\r\n userStoryList: any = [];\r\n userStorySearchList: any = [];\r\n goalSearchList: any = [];\r\n isEnableBugBoard: boolean;\r\n selectedRoleIds: string[] = [];\r\n dashboardUpdateInProgress: boolean;\r\n users: any;\r\n goalIndex: any;\r\n workspaceForm: FormGroup;\r\n projectSearchResults: any;\r\n delayTimeInput = new Subject<any>();\r\n menusfetchInProgress: boolean;\r\n workspacesfetchInProgress: boolean;\r\n widgetsfetchInProgress: boolean;\r\n recentSearchesfetchInProgress: boolean;\r\n searchTasks: SearchTaskTypeModel;\r\n loadingSearchMenuData: boolean = false;\r\n defaultDashboardId: string;\r\n searchById: boolean;\r\n searchByText: boolean;\r\n constructor(\r\n private store: Store<State>,\r\n private cookieService: CookieService,\r\n public routes: Router,\r\n private toastr: ToastrService,\r\n private translateService: TranslateService,\r\n public authenticationService: AuthenticationService,\r\n private route: ActivatedRoute,\r\n public dialog: MatDialog,\r\n private rss: RecentSearchService,\r\n private location: Location,\r\n private themeService: ThemeService,\r\n private actionUpdates$: Actions,\r\n private cdRef: ChangeDetectorRef,\r\n @Inject(WINDOW) private window: Window,\r\n private googleAnalyticsService: GoogleAnalyticsService,\r\n private commonService: CommonService\r\n ) {\r\n super();\r\n //this.onFocus();\r\n\r\n // let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n // this.cookieService.set(LocalStorageProperties.SearchClick, JSON.stringify(false), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.canAccess_feature_CanEditOtherEmployeeDetails$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_CanEditOtherEmployeeDetails }));\r\n this.canAccess_feature_CanEditOtherEmployeeDetails$.subscribe(result => {\r\n this.canAccess_feature_CanEditOtherEmployeeDetails = result;\r\n })\r\n this.initializeWorkspaceForm();\r\n this.routes.events.subscribe(val => {\r\n if (this.location.path() != \"\") {\r\n this.url = this.location.path();\r\n }\r\n });\r\n // this.widgetService.selectedWorkspace.subscribe(id => {\r\n // this.selectedDashboard = id;\r\n // });\r\n // this.actionUpdates$\r\n // .pipe(\r\n // takeUntil(this.ngDestroyed$),\r\n // ofType(AuthenticationActionTypes.GetCompanyThemeCompleted),\r\n // tap(() => {\r\n //this.themeModel$ = this.store.pipe(select(sharedModuleReducers.getThemeModel));\r\n //this.themeModel$.subscribe(x => this.themeModel = x);\r\n // this.getTheme();\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.themeModel = this.cookieService.check('CompanyTheme') ? JSON.parse(this.cookieService.get(\"CompanyTheme\")) : null;\r\n this.themeService.changeTheme(this.themeModel);\r\n this.cookieService.set(LocalStorageProperties.CompanyMainLogo, this.themeModel.companyMainLogo, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyMiniLogo, this.themeModel.companyMiniLogo, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.themeModel = this.cookieService.check('CompanyTheme') ? JSON.parse(this.cookieService.get(\"CompanyTheme\")) : null;\r\n\r\n var companySettingsModel = JSON.parse(localStorage.getItem(LocalStorageProperties.CompanySettings));\r\n\r\n this.companyMainLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\").value : this.companyMainLogo;\r\n this.companyMiniLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\").value : this.companyMiniLogo;\r\n\r\n document.getElementById(\"shortcut-fav-icon\").setAttribute(\"href\", this.themeModel.companyMiniLogo);\r\n this.themeBaseColor = localStorage.getItem('themeColor');\r\n // // this.themeModel = this.cookieService.check('CompanyTheme') ? JSON.parse(this.cookieService.get(\"CompanyTheme\")) : null;\r\n // // if (this.themeModel && this.themeModel.companyThemeId !== \"00000000-0000-0000-0000-000000000000\") {\r\n // // this.themeService.changeTheme(this.themeModel);\r\n // // this.cookieService.set(LocalStorageProperties.CompanyMainLogo, this.themeModel.companyMainLogo, null);\r\n // // this.cookieService.set(LocalStorageProperties.CompanyMiniLogo, this.themeModel.companyMiniLogo, null);\r\n // // }\r\n // // else {\r\n // // var themeModel = new ThemeModel()\r\n // // themeModel.companyThemeId = \"0929D35A-3573-4B06-93FB-C7D46AAFA918\";\r\n // // // themeModel.companyMiniLogo = \"assets/images/Logo-favicon.png\";\r\n // // // themeModel.companyMainLogo = \"assets/images/Main-Logo.png\";\r\n // // this.themeModel = themeModel;\r\n // // this.themeService.changeTheme(themeModel);\r\n // // this.cookieService.set(LocalStorageProperties.CompanyMainLogo, this.themeModel.companyMainLogo, null);\r\n // // this.cookieService.set(LocalStorageProperties.CompanyMiniLogo, this.themeModel.companyMiniLogo, null);\r\n // // }\r\n // // this.companyMainLogo = this.cookieService.get(LocalStorageProperties.CompanyMainLogo);\r\n // // this.companyMiniLogo = this.cookieService.get(LocalStorageProperties.CompanyMiniLogo);\r\n // // //this.changeFavIcon();\r\n // // this.themeBaseColor = localStorage.getItem('themeColor');\r\n //this.cdRef.detectChanges();\r\n // })\r\n // )\r\n // .subscribe();\r\n\r\n\r\n // this.actionUpdates$\r\n // .pipe(\r\n // takeUntil(this.ngDestroyed$),\r\n // ofType(WorkspacesActionTypes.LoadWorkspaceByIdCompleted),\r\n // tap((data: any) => {\r\n // var workspacesList = data.searchWorkspacesSuccess;\r\n // this.dashboardUpdateInProgress = false;\r\n // // this.closeAddWorkspaceDialog();\r\n // this.disableWorkspace = false;\r\n // if (workspacesList.length > 0) {\r\n // this.workspaces.push(workspacesList[0]);\r\n // this.display = false;\r\n // this.isOpened.emit(this.display);\r\n // this.openNewDashboard.emit(workspacesList[0].workspaceId)\r\n // }\r\n\r\n // })\r\n // ).subscribe();\r\n\r\n //this.getAllProjects();\r\n\r\n this.delayTimeInput.pipe(\r\n debounceTime(2000),\r\n distinctUntilChanged())\r\n .subscribe(value => {\r\n this.SearchItem(value);\r\n });\r\n\r\n }\r\n\r\n getTheme() {\r\n this.authenticationService.getThemes().subscribe((response: any) => {\r\n if (response.success) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set('CompanyTheme', JSON.stringify(response.data), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.themeModel = this.cookieService.check('CompanyTheme') ? JSON.parse(this.cookieService.get(\"CompanyTheme\")) : null;\r\n this.themeService.changeTheme(this.themeModel);\r\n this.cookieService.set(LocalStorageProperties.CompanyMainLogo, this.themeModel.companyMainLogo, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyMiniLogo, this.themeModel.companyMiniLogo, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.siteUrl = response.data.registrerSiteAddress;\r\n this.themeModel = this.cookieService.check('CompanyTheme') ? JSON.parse(this.cookieService.get(\"CompanyTheme\")) : null;\r\n\r\n var companySettingsModel = JSON.parse(localStorage.getItem(LocalStorageProperties.CompanySettings));\r\n\r\n this.companyMainLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\").value : this.companyMainLogo;\r\n this.companyMiniLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\").value : this.companyMiniLogo;\r\n\r\n if (this.companyMainLogo == \"\" || this.companyMainLogo == null || this.companyMainLogo == undefined) {\r\n this.companyMainLogo = response.data.companyMainLogo;\r\n }\r\n if (this.companyMiniLogo == \"\" || this.companyMiniLogo == null || this.companyMiniLogo == undefined) {\r\n this.companyMiniLogo = response.data.companyMiniLogo;\r\n }\r\n document.getElementById(\"shortcut-fav-icon\").setAttribute(\"href\", this.themeModel.companyMiniLogo);\r\n this.themeBaseColor = localStorage.getItem('themeColor');\r\n this.cdRef.detectChanges();\r\n }\r\n });\r\n }\r\n\r\n @HostListener('document:keydown.control.q', [])\r\n keyOpenEvent() {\r\n this.element.nativeElement.focus();\r\n this.display = true;\r\n this.searchByText = false;\r\n this.searchById = false;\r\n this.isOpened.emit(this.display);\r\n this.onFocus()\r\n }\r\n\r\n @HostListener('document:keydown.control.m', [])\r\n keyCloseEvent() {\r\n this.element.nativeElement.blur();\r\n this.display = false;\r\n this.searchText = '';\r\n this.searchByText = false;\r\n this.searchById = false;\r\n this.isOpened.emit(this.display);\r\n }\r\n\r\n @HostListener('document:keydown.control.b', [])\r\n remoteSearchByText() {\r\n this.searchById = false;\r\n this.searchByText = true\r\n this.element.nativeElement.focus();\r\n //this.display = true;\r\n this.isOpened.emit(this.display);\r\n }\r\n\r\n @HostListener('document:keydown.control.y', [])\r\n remoteSearchById() {\r\n this.searchByText = false\r\n this.searchById = true;\r\n this.element.nativeElement.focus();\r\n //this.display = true;\r\n this.isOpened.emit(this.display);\r\n }\r\n\r\n convertToLocalTime(time) {\r\n var utcDate = moment.utc(time).format();\r\n var localDate = moment.utc(utcDate).local().format();\r\n return localDate;\r\n }\r\n\r\n initializeWorkspaceForm() {\r\n this.selectedRoleIds = null;\r\n this.disableWorkspace = false;\r\n this.disableWorkspacehide = false;\r\n this.workspaceForm = new FormGroup({\r\n workspaceName: new FormControl(null,\r\n Validators.compose([\r\n Validators.required,\r\n Validators.maxLength(50)\r\n ])\r\n ),\r\n selectedRoles: new FormControl(null,\r\n Validators.compose([\r\n Validators.required\r\n ])\r\n ),\r\n description: new FormControl(null,\r\n Validators.compose([\r\n Validators.maxLength(1000)\r\n ])\r\n ),\r\n editRoleIds: new FormControl(null, []),\r\n deleteRoleIds: new FormControl(null, [])\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n super.ngOnInit();\r\n\r\n this.defaultDashboardId = this.cookieService.check(LocalStorageProperties.DefaultDashboard) ? JSON.parse(this.cookieService.get(LocalStorageProperties.DefaultDashboard)) : null;;\r\n\r\n //this.store.dispatch(new GetCompanyThemeTriggered());\r\n this.adminTools = [];\r\n // var dashboards = JSON.parse(localStorage.getItem(LocalStorageProperties.Dashboards));\r\n // if (dashboards && dashboards != \"null\") {\r\n // this.workspaces = this.workspacesForLoop = dashboards;\r\n // }\r\n // var menuItems = JSON.parse(localStorage.getItem(LocalStorageProperties.MenuItems))\r\n // if (menuItems && menuItems != \"null\") {\r\n // this.menuItem = menuItems;\r\n // this.items = this.menuItem.filter(item => item.type != \"dropDown\");\r\n // this.itemClicked = this.items[0];\r\n // }\r\n // var widgets = JSON.parse(localStorage.getItem(LocalStorageProperties.FavouriteWidgets));\r\n // if (widgets && widgets != \"null\") {\r\n // this.widgets = this.originalWidgets = widgets;\r\n // }\r\n // var recentSearches = JSON.parse(localStorage.getItem(LocalStorageProperties.RecentSearches));\r\n // if (recentSearches && recentSearches != \"null\") {\r\n // this.allsearches = this.recentSearches = recentSearches;\r\n // }\r\n // this.loadWidgetsList();\r\n // this.loadWorkspacesList();\r\n this.getSoftLabelConfigurations();\r\n this.getCompanySettings();\r\n this.menuItems$ = this.store.pipe(\r\n select(sharedModuleReducers.getCurrentActiveMenuCategoryMenuItems),\r\n tap(menuList => console.log(menuList))\r\n );\r\n // this.menuItems$.subscribe(x => {\r\n // var a = x;\r\n // var b = this.menuItem.filter(item => item.type != \"dropDown\");\r\n\r\n // //this.itemClicked = this.items[0];\r\n // //this.menusfetchInProgress = false;\r\n // });\r\n\r\n // this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));\r\n\r\n var companySettingsModel = JSON.parse(localStorage.getItem(LocalStorageProperties.CompanySettings));\r\n\r\n this.companyMainLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\").value : this.companyMainLogo;\r\n this.companyMiniLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\").value : this.companyMiniLogo;\r\n\r\n if (this.companyMainLogo == \"\" || this.companyMainLogo == null || this.companyMainLogo == undefined) {\r\n this.companyMainLogo = this.cookieService.get(LocalStorageProperties.CompanyMainLogo);\r\n }\r\n if (this.companyMiniLogo == \"\" || this.companyMiniLogo == null || this.companyMiniLogo == undefined) {\r\n this.companyMiniLogo = this.cookieService.get(LocalStorageProperties.CompanyMiniLogo);\r\n }\r\n\r\n if (document.getElementById('shortcut-fav-icon')) {\r\n document.getElementById('shortcut-fav-icon').setAttribute(\"href\", this.companyMiniLogo);\r\n }\r\n //this.getRecentSearches();\r\n this.selectedList = [];\r\n\r\n // this.custapp = {\r\n // name: \"Custom applications\",\r\n // link: \"/applications/custom-applications\",\r\n // permission: this.canAccess_feature_AddOrUpdateApplications$\r\n // }\r\n // this.forms = {\r\n // name: \"Forms\",\r\n // link: \"/applications/view-forms\",\r\n // permission: this.canAccess_feature_ViewForms$\r\n // }\r\n // this.projectRoleConfiguration = {\r\n // name: \"Project role configuration\",\r\n // link: \"/rolemanagement/entityrolemanagement\",\r\n // permission: this.canAccess_feature_ManageProjectRolePermissions$\r\n // }\r\n // this.roleConfiguration = {\r\n // name: \"Role configuration\",\r\n // link: \"/rolemanagement/rolemanagement\",\r\n // permission: this.canAccess_feature_ViewRoles$\r\n // }\r\n // this.canAccess_feature_AddOrUpdateApplications$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_AddOrUpdateApplications }));\r\n // this.canAccess_feature_AddOrUpdateApplications$.subscribe((result) => {\r\n // this.canAccess_feature_AddOrUpdateApplications = result;\r\n // if (result) {\r\n // this.adminTools.some((flow) => flow.name == 'Custom applications') ? null : this.adminTools.push(this.custapp);\r\n // }\r\n // })\r\n // this.canAccess_feature_AddOrUpdateForm$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_AddOrUpdateForm }));\r\n // this.canAccess_feature_AddOrUpdateForm$.subscribe((result) => {\r\n // this.canAccess_feature_AddOrUpdateForm = result;\r\n // if (result) {\r\n // this.adminTools.some((flow) => flow.name == 'Forms') ? null : this.adminTools.push(this.forms);\r\n // }\r\n // })\r\n // this.canAccess_feature_ViewForms$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_ViewForms })); // //this.route.url.subscribe((url) => this.url = url.toString());\r\n // this.canAccess_feature_ViewForms$.subscribe((result) => {\r\n // this.canAccess_feature_ViewForms = result;\r\n // if (result) {\r\n // this.adminTools.some((flow) => flow.name == 'Forms') ? null : this.adminTools.push(this.forms);\r\n // }\r\n // })\r\n // this.canAccess_feature_ManageProjectRolePermissions$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_ManageProjectRolePermissions }));\r\n // this.canAccess_feature_ManageProjectRolePermissions$.subscribe((result) => {\r\n // this.canAccess_feature_ManageProjectRolePermissions = result;\r\n // if (result) {\r\n // this.adminTools.some((flow) => flow.name == 'Project role configuration') ? null : this.adminTools.push(this.projectRoleConfiguration);\r\n // }\r\n // })\r\n // this.canAccess_feature_ViewRoles$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_ViewRoles }));\r\n // this.canAccess_feature_ViewRoles$.subscribe((result) => {\r\n // this.canAccess_feature_ViewRoles = result;\r\n // if (result) {\r\n // this.adminTools.some((flow) => flow.name == 'Role configuration') ? null : this.adminTools.push(this.roleConfiguration);\r\n // }\r\n // })\r\n // this.canAccess_feature_CanEditOtherEmployeeDetails$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_CanEditOtherEmployeeDetails }));\r\n // this.canAccess_feature_CanEditOtherEmployeeDetails$.subscribe(result => {\r\n // this.canAccess_feature_CanEditOtherEmployeeDetails = result;\r\n // if (result) {\r\n // // this.getAllEmployees();\r\n // }\r\n // })\r\n this.tools = this.adminTools;\r\n //this.selectedRowIndex = 0;\r\n //this.getAllEmployees();\r\n // this.loadWidgetsList(null);\r\n // this.loadWorkspacesList();\r\n this.userStorySearchList = [];\r\n this.goalSearchList = [];\r\n // if(this.items.length>0) {\r\n // this.selectedRowIndex = 0; this.itemClicked = this.items[0];\r\n // } else if(this.tools.length>0) {\r\n // this.t=0; this.itemClicked = this.tools[0];\r\n // } else if(this.workspaces.length>0) {\r\n // this.ws = 0; this.itemClicked =this.workspaces[0];\r\n // } \r\n\r\n this.SearchItem = _.debounce(this.SearchItem, 1000);\r\n this.routes.events\r\n .subscribe(\r\n (event: any) => {\r\n if (event instanceof NavigationEnd) {\r\n this.routerActive();\r\n }\r\n });\r\n }\r\n\r\n openInfo(infoPopOver) {\r\n infoPopOver.openPopover();\r\n }\r\n\r\n // getAllProjects() {\r\n // const projectSearchResult = new ProjectSearchCriteriaInputModel();\r\n // projectSearchResult.isArchived = false;\r\n // this.commonService.searchProjects(projectSearchResult).subscribe((response: any) => {\r\n // if (response.success == true) {\r\n // if (response.data) {\r\n // this.projectSearchResults = response.data;\r\n // }\r\n // }\r\n // else {\r\n // this.validationMessage = response.apiResponseMessages[0].message;\r\n // this.projectSearchResults = [];\r\n // this.toastr.error(this.validationMessage);\r\n // }\r\n // })\r\n // }\r\n\r\n getCompanySettings() {\r\n let companySettingsModel = [];\r\n this.companySettingsMOdel$ = this.store.pipe(select(sharedModuleReducers.getCompanySettings));\r\n this.companySettingsMOdel$.subscribe((x) => companySettingsModel = x);\r\n let bugBoardResult = companySettingsModel.filter(item => item.key.trim() == \"EnableBugBoard\");\r\n if (bugBoardResult && bugBoardResult.length > 0) {\r\n this.isEnableBugBoard = bugBoardResult[0].value == \"1\" ? true : false;\r\n }\r\n\r\n this.companyMainLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\").value : this.companyMainLogo;\r\n this.companyMiniLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\").value : this.companyMiniLogo;\r\n\r\n if (document.getElementById('shortcut-fav-icon')) {\r\n document.getElementById('shortcut-fav-icon').setAttribute(\"href\", this.companyMiniLogo);\r\n }\r\n }\r\n\r\n loadSearchData() {\r\n var menuItems = JSON.parse(localStorage.getItem(LocalStorageProperties.MenuItems))\r\n if (menuItems && menuItems != \"null\") {\r\n this.menuItem = menuItems;\r\n this.items = this.menuItem.filter(item => item.type != \"dropDown\");\r\n this.itemClicked = this.items[0];\r\n }\r\n var widgets = JSON.parse(localStorage.getItem(LocalStorageProperties.FavouriteWidgets));\r\n if (widgets && widgets != \"null\") {\r\n this.widgets = this.originalWidgets = widgets;\r\n }\r\n var recentSearches = JSON.parse(localStorage.getItem(LocalStorageProperties.RecentSearches));\r\n if (recentSearches && recentSearches != \"null\") {\r\n this.allsearches = this.recentSearches = recentSearches;\r\n }\r\n }\r\n translateapplicationname(item) {\r\n if (item == null) {\r\n return null;\r\n }\r\n var localvariable = item.trim();\r\n var name = this.translateService.instant(\"APP.\" + localvariable);\r\n if (name.indexOf(\"APP.\") != -1) {\r\n return item;\r\n }\r\n else {\r\n return name;\r\n }\r\n }\r\n\r\n onFocus() {\r\n if (!this.searchById && !this.searchByText) {\r\n var retrieveDashboards: boolean = true;\r\n var dashboards = localStorage.getItem(LocalStorageProperties.Dashboards);\r\n if (dashboards && dashboards != \"null\") {\r\n retrieveDashboards = false;\r\n this.workspacesForLoop = JSON.parse(dashboards);\r\n if (this.searchText) {\r\n this.workspaces = this.workspacesForLoop.filter(\r\n item =>\r\n item.workspaceName\r\n .toLowerCase()\r\n .includes(this.searchText.toLowerCase()) !==\r\n false\r\n );\r\n } else {\r\n this.workspaces = this.workspacesForLoop;\r\n }\r\n }\r\n if (!(this.cookieService.check(LocalStorageProperties.SearchClick) && JSON.parse(this.cookieService.get(LocalStorageProperties.SearchClick)) == true)) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.SearchClick, JSON.stringify(true), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n // this.loadWidgetsList(null);\r\n // this.loadWorkspacesList();\r\n // this.getAllMenuItems();\r\n\r\n this.loadingSearchMenuData = true;\r\n this.rss.searchMenuData(retrieveDashboards)\r\n .subscribe((res: any) => {\r\n if (res.success && res.data) {\r\n if (res.data.workspaces) {\r\n this.workspaces = res.data.workspaces;\r\n localStorage.setItem(LocalStorageProperties.Dashboards, JSON.stringify(this.workspaces));\r\n this.workspacesForLoop = this.workspaces;\r\n //this.defaultDashboard = this.workspaces.find(i => i.isDefault == true);\r\n }\r\n if (res.data.widgets) {\r\n this.originalWidgets = res.data.widgets.sort((a, b) =>\r\n a.widgetName.toLowerCase() > b.widgetName.toLowerCase() ? 1 : -1\r\n );\r\n this.widgets = this.originalWidgets;\r\n localStorage.setItem(LocalStorageProperties.FavouriteWidgets, JSON.stringify(this.widgets));\r\n }\r\n if (res.data.menuItems) {\r\n // var applications = res.data.menuItems.filter(function (x) {\r\n // return (\r\n // x.menuCategory &&\r\n // MenuCategories.Main &&\r\n // x.menuCategory.toLowerCase() === MenuCategories.Main.toLowerCase()\r\n // );\r\n // })\r\n this.menuItem = res.data.menuItems;\r\n localStorage.setItem(LocalStorageProperties.MenuItems, JSON.stringify(this.menuItem));\r\n this.items = this.menuItem.filter(item => item.type != \"dropDown\");\r\n //this.itemClicked = this.items[0];\r\n }\r\n if (res.data.recentSearch) {\r\n this.allsearches = res.data.recentSearch;\r\n this.recentSearches = this.allsearches;\r\n localStorage.setItem(LocalStorageProperties.RecentSearches, JSON.stringify(this.allsearches));\r\n }\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.LoadFavouriteWidgets, JSON.stringify(false), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.LoadRecentSearches, JSON.stringify(false), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.routerActive();\r\n }\r\n this.loadingSearchMenuData = false;\r\n });\r\n } else {\r\n this.loadSearchData();\r\n }\r\n // else {\r\n // if (!(this.cookieService.check(LocalStorageProperties.LoadFavouriteWidgets) && JSON.parse(this.cookieService.get(LocalStorageProperties.LoadFavouriteWidgets)) == false)) {\r\n // this.loadWidgetsList(null, true);\r\n // let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n // this.cookieService.set(LocalStorageProperties.LoadFavouriteWidgets, JSON.stringify(false), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n // }\r\n // if (!(this.cookieService.check(LocalStorageProperties.LoadRecentSearches) && JSON.parse(this.cookieService.get(LocalStorageProperties.LoadRecentSearches)) == false)) {\r\n // this.getRecentSearches();\r\n // let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n // this.cookieService.set(LocalStorageProperties.LoadRecentSearches, JSON.stringify(false), null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n // }\r\n // this.routerActive();\r\n // }\r\n this.routerActive();\r\n }\r\n this.display = true;\r\n this.isOpened.emit(this.display);\r\n }\r\n\r\n routerActive() {\r\n if (this.routes.url.includes(\"dashboard-management/dashboard\") && this.routes.url.split(\"/\")[3]) {\r\n var dashboardId = this.routes.url.split(\"/\")[3];\r\n if (dashboardId && this.workspaces.length > 0) {\r\n var index = this.workspaces.findIndex(i => i.workspaceId == dashboardId);\r\n this.ws = index;\r\n this.selectedRowIndex = this.wd = this.rs = null;\r\n this.itemClicked = this.workspaces[this.ws];\r\n }\r\n } else if (this.routes.url.includes(\"dashboard-management/widgets\") && this.routes.url.split(\"/\")[3]) {\r\n var widgetId = this.routes.url.split(\"/\")[3];\r\n if (widgetId && this.widgets.length > 0) {\r\n var index = this.widgets.findIndex(i => i.widgetId == widgetId);\r\n if (index > 0) {\r\n this.wd = index;\r\n this.selectedRowIndex = this.ws = this.rs = null;\r\n this.itemClicked = this.widgets[this.wd];\r\n } else if (this.recentSearches && this.recentSearches.length > 0) {\r\n var indexRs = this.recentSearches.findIndex(i => i.itemId == widgetId)\r\n this.rs = indexRs;\r\n this.selectedRowIndex = this.ws = this.wd = null;\r\n this.itemClicked = this.recentSearches[this.rs];\r\n }\r\n }\r\n } else if (this.items.length > 0) {\r\n var index = this.items.findIndex(i => this.routes.url == \"/\" + i.state);\r\n this.selectedRowIndex = index;\r\n this.ws = this.wd = this.rs = null;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n loadWorkspacesList() {\r\n this.workspacesfetchInProgress = true;\r\n var workspacelist = new WorkspaceList();\r\n workspacelist.workspaceId = \"null\";\r\n workspacelist.isHidden = false;\r\n this.commonService.GetWorkspaceList(workspacelist).subscribe((result: any) => {\r\n this.workspaces = result.data;\r\n localStorage.setItem(LocalStorageProperties.Dashboards, JSON.stringify(result.data));\r\n this.workspacesForLoop = this.workspaces;\r\n this.defaultDashboard = this.workspaces.find(i => i.isDefault == true);\r\n this.workspacesfetchInProgress = false;\r\n });\r\n // this.store.dispatch(new LoadWorkspacesListTriggered(this.workspacelist));\r\n };\r\n\r\n openApps() {\r\n this.routes.navigate([\"app-store/widgets\"]);\r\n }\r\n\r\n loadWidgetsList(searchText, store = false) {\r\n this.widgetsfetchInProgress = true;\r\n this.widget = new WidgetList();\r\n this.widget.widgetId = \"null\";\r\n this.widget.isArchived = false;\r\n this.widget.pageNumber = null;\r\n this.widget.pageSize = null;\r\n this.widget.sortDirectionAsc = true;\r\n this.widget.isFavouriteWidget = true;\r\n if (searchText)\r\n this.widget.searchText = searchText;\r\n\r\n this.commonService.GetWidgetsBasedOnUser(this.widget).subscribe((result: any) => {\r\n this.widgets = [];\r\n if (result.success) {\r\n this.originalWidgets = result.data.sort((a, b) =>\r\n a.widgetName.toLowerCase() > b.widgetName.toLowerCase() ? 1 : -1\r\n );\r\n this.widgets = this.originalWidgets;\r\n if (store) {\r\n localStorage.setItem(LocalStorageProperties.FavouriteWidgets, JSON.stringify(this.widgets));\r\n }\r\n this.widgetsfetchInProgress = false;\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n });\r\n\r\n var companySettingsModel = JSON.parse(localStorage.getItem(LocalStorageProperties.CompanySettings));\r\n\r\n this.companyMainLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"mainlogo\").value : this.companyMainLogo;\r\n this.companyMiniLogo = companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\") != null ? companySettingsModel.find(x => x.key.toLowerCase() == \"minilogo\").value : this.companyMiniLogo;\r\n // this.companyMainLogo = this.cookieService.get(LocalStorageProperties.CompanyMainLogo);\r\n // this.companyMiniLogo = this.cookieService.get(LocalStorageProperties.CompanyMiniLogo);\r\n\r\n if (this.companyMainLogo == \"\" || this.companyMainLogo == null || this.companyMainLogo == undefined) {\r\n this.companyMainLogo = this.cookieService.get(LocalStorageProperties.CompanyMainLogo);\r\n }\r\n if (this.companyMiniLogo == \"\" || this.companyMiniLogo == null || this.companyMiniLogo == undefined) {\r\n this.companyMiniLogo = this.cookieService.get(LocalStorageProperties.CompanyMiniLogo);\r\n }\r\n\r\n if (document.getElementById('shortcut-fav-icon')) {\r\n document.getElementById('shortcut-fav-icon').setAttribute(\"href\", this.companyMiniLogo);\r\n }\r\n }\r\n\r\n\r\n getAllEmployees() {\r\n this.canAccess_feature_CanEditOtherEmployeeDetails$ = this.store.pipe(select(sharedModuleReducers.doesUserHavePermission, { featureId: FeatureIds.Feature_CanEditOtherEmployeeDetails }));\r\n this.canAccess_feature_CanEditOtherEmployeeDetails$.subscribe(result => {\r\n this.canAccess_feature_CanEditOtherEmployeeDetails = result;\r\n })\r\n let employeeSpentTime = new EmployeeListInput();\r\n employeeSpentTime.sortDirectionAsc = true;\r\n employeeSpentTime.isActive = true;\r\n // this.hrDashboarService.GetAllEmployees(employeeSpentTime).subscribe((result: any) => {\r\n // if (result.success) {\r\n // this.loadedEmployeeList = result.data;\r\n // if (!(this.canAccess_feature_CanEditOtherEmployeeDetails)) {\r\n // var currentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n // this.loadedEmployeeList = this.loadedEmployeeList.filter(x => (x.userId.toLowerCase() == currentUserId.toLowerCase()));\r\n // }\r\n // this.employeeList = this.loadedEmployeeList;\r\n // }\r\n // })\r\n\r\n const employeeListSearchResult = new EmployeeListModel();\r\n employeeListSearchResult.sortDirectionAsc = true;\r\n this.commonService.getAllEmployees(employeeListSearchResult).subscribe((result: any) => {\r\n if (result.success) {\r\n this.loadedEmployeeList = result.data;\r\n if (!(this.canAccess_feature_CanEditOtherEmployeeDetails)) {\r\n var currentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n this.loadedEmployeeList = this.loadedEmployeeList.filter(x => (x.userId.toLowerCase() == currentUserId.toLowerCase()));\r\n }\r\n this.employeeList = this.loadedEmployeeList;\r\n }\r\n })\r\n }\r\n // ngAfterViewInit() {\r\n // this.e = this.element.nativeElement;\r\n // let outSideClick = this.e.addEventListener('blur',()=>{\r\n // this.display = false;\r\n // });\r\n // }\r\n\r\n OpenMenuItems(openMenuPopUp) {\r\n openMenuPopUp.openPopover();\r\n }\r\n\r\n openLevel2Menu(link, event) {\r\n this.stateLvl1 = link;\r\n this.subLevels = event;\r\n }\r\n\r\n openLevel3Menu(link1, link2, event) {\r\n this.level3Link1 = link1;\r\n this.level3Link2 = link2;\r\n this.subLevelsForLevel2 = event;\r\n }\r\n\r\n getAllMenuItems() {\r\n this.menusfetchInProgress = true;\r\n this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n this.defaultDashboardId = this.cookieService.check(LocalStorageProperties.DefaultDashboard) ? JSON.parse(this.cookieService.get(LocalStorageProperties.DefaultDashboard)) : null;;\r\n if (this.defaultDashboardId && userReference != \"null\" && userReference != null) {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + this.defaultDashboardId + \"/form/\" + userReference);\r\n } else if (this.defaultDashboardId) {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + this.defaultDashboardId);\r\n }\r\n // this.routes.navigateByUrl(\"lives/welcome\");\r\n }\r\n\r\n navigateToUrl(workspaceId) {\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n if (userReference != \"null\" && userReference != null) {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + workspaceId + \"/form/\" + userReference);\r\n } else {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + workspaceId);\r\n }\r\n }\r\n\r\n getSoftLabelConfigurations() {\r\n this.softLabels = JSON.parse(localStorage.getItem('SoftLabels'));\r\n this.cdRef.markForCheck();\r\n }\r\n\r\n getSearchMenuItems() {\r\n if (this.searchByText) {\r\n this.searchByTextLoading = true;\r\n this.rss.getSearchMenuItems({ searchText: this.searchText, searchUniqueId: null })\r\n .subscribe((response: any) => {\r\n if (response.success && response.data != null && response.data != undefined) {\r\n if (response.data.length > 0) {\r\n if (this.searchText) {\r\n this.projectList = response.data.filter(us => us.itemType == SearchTaskType.Project);\r\n this.userStorySearchList = response.data.filter(us => (us.itemType == SearchTaskType.workItemORBug) || (us.itemType == SearchTaskType.adhoc));\r\n this.goalSearchList = response.data.filter(us => us.itemType == SearchTaskType.goal || (us.itemType == SearchTaskType.sprint));\r\n const users = response.data.filter(us => us.itemType == SearchTaskType.Employee);\r\n this.loadedEmployeeList = users;\r\n if (!(this.canAccess_feature_CanEditOtherEmployeeDetails)) {\r\n var currentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n this.loadedEmployeeList = this.loadedEmployeeList.filter((x: any) => (x.itemId.toLowerCase() == currentUserId.toLowerCase()));\r\n }\r\n this.employeeList = this.loadedEmployeeList;\r\n if (this.projectList && this.projectList.length > 0) {\r\n this.ws = this.t = this.rs = this.wd = this.selectedRowIndex = this.goalIndex = this.users = this.selectedEmployeeIndex = null;\r\n this.projectIndex = 0;\r\n this.itemClicked = this.projectList[0];\r\n }\r\n else if (this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.ws = this.t = this.rs = this.wd = this.selectedRowIndex = this.goalIndex = this.selectedEmployeeIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.ws = this.t = this.rs = this.wd = this.selectedRowIndex = this.users = this.projectIndex = this.selectedEmployeeIndex = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.employeeList && this.employeeList.length > 0) {\r\n this.ws = this.t = this.rs = this.wd = this.selectedRowIndex = this.users = this.projectIndex = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else {\r\n this.users = this.goalIndex = this.projectIndex = this.selectedEmployeeIndex = null;\r\n }\r\n this.cdRef.detectChanges();\r\n }\r\n } else {\r\n this.userStorySearchList = [];\r\n this.goalSearchList = [];\r\n }\r\n }\r\n this.searchByTextLoading = false;\r\n })\r\n }\r\n }\r\n\r\n onProjectSelect(item, event) {\r\n if (event.which == 1) {\r\n this.searchText = '';\r\n this.projectList = [];\r\n this.InsertSearch(item.itemName, RecentSearchType.project, item.itemId);\r\n this.routes.navigateByUrl(\"projects/projectstatus/\" + item.itemId + \"/active-goals\");\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n SearchItem(event) {\r\n this.userStorySearchList = [];\r\n this.goalSearchList = [];\r\n this.themeBaseColor = localStorage.getItem('themeColor');\r\n var element =\r\n !!document.getElementById(\"style-1\");\r\n element ? document.getElementById(\"style-1\").scrollTop = 0 : null;\r\n var elem =\r\n !!document.getElementById(\"style-2\");\r\n elem ? document.getElementById(\"style-2\").scrollTop = 0 : null;\r\n var emp = !!document.getElementById(\"style-3\");\r\n emp ? document.getElementById(\"style-3\").scrollTop = 0 : null;\r\n var widget = !!document.getElementById(\"style-4\");\r\n widget ? document.getElementById(\"style-4\").scrollTop = 0 : null;\r\n //this.display = true;\r\n this.isOpened.emit(this.display);\r\n if (event.target.value) {\r\n if (this.searchByText) {\r\n return this.getSearchMenuItems();\r\n }\r\n else if (this.searchById) {\r\n return;\r\n }\r\n this.items = this.menuItem.filter(\r\n item =>\r\n item.menu.toLowerCase().includes(event.target.value.toLowerCase()) !==\r\n false && item.type != \"dropDown\"\r\n );\r\n this.workspaces = this.workspacesForLoop.filter(\r\n item =>\r\n item.workspaceName\r\n .toLowerCase()\r\n .includes(event.target.value.toLowerCase()) !==\r\n false\r\n );\r\n this.adminTools ? this.tools = this.adminTools.filter(\r\n item =>\r\n item.name.toLowerCase().includes(event.target.value.toLowerCase()) !==\r\n false\r\n ) : null;\r\n //this.loadWidgetsList(event.target.value);\r\n this.originalWidgets ? this.widgets = this.originalWidgets.filter(\r\n item =>\r\n item.widgetName.toLowerCase().includes(event.target.value.toLowerCase()) !==\r\n false\r\n ) : null;\r\n this.employeeList = this.loadedEmployeeList.length > 0 ? (this.loadedEmployeeList.filter(x =>\r\n ((x.fullName.toLowerCase().includes(event.target.value.toLowerCase()) !== false)\r\n || (x.employeeNumber.toLowerCase().includes(event.target.value.toLowerCase()) !== false)\r\n || (x.surName.toLowerCase().includes(event.target.value.toLowerCase()) !== false))\r\n )) : null;\r\n // this.allsearches ? this.recentSearches = this.allsearches.filter(\r\n // item =>\r\n // item.recentSearch.toLowerCase().indexOf(event.target.value.toLowerCase()) !== -1\r\n // ) : null;\r\n this.allsearches ? this.recentSearches = this.allsearches.filter(\r\n item =>\r\n item.recentSearch.toLowerCase().includes(event.target.value.toLowerCase()) !==\r\n false\r\n ) : null;\r\n\r\n if (event.target.value && event.target.value.search('-') > 0) {\r\n this.rss.searchGoalTasks(event.target.value).subscribe((response: any) => {\r\n if (response.success && response.data != null && response.data != undefined) {\r\n if (response.data.length > 0) {\r\n if (this.searchText) {\r\n this.userStorySearchList = response.data.filter(us => (us.type == SearchTaskType.workItemORBug) || (us.type == SearchTaskType.adhoc));\r\n this.goalSearchList = response.data.filter(us => us.type == SearchTaskType.goal || (us.type == SearchTaskType.sprint));\r\n if (!((this.items.length > 0 && this.items) || (this.tools && this.tools.length > 0) || (this.workspaces && this.workspaces.length > 0) || (this.widgets && this.widgets.length > 0))) {\r\n if (this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.ws = this.t = this.rs = this.wd = this.selectedRowIndex = this.goalIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.ws = this.t = this.rs = this.wd = this.selectedRowIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else {\r\n this.users = this.goalIndex = null;\r\n }\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n } else {\r\n this.userStorySearchList = [];\r\n this.goalSearchList = [];\r\n }\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n // const userStorySearchCriteriaTemp = new UserStorySearchCriteriaInputModel();\r\n // userStorySearchCriteriaTemp.pageSize = 1000;\r\n // userStorySearchCriteriaTemp.searchText = event.target.value;\r\n // //.replace(/\\s/g, \"\");\r\n\r\n // // if (event.target.value.indexOf('-')) {\r\n // this.userService.searchUserStories(userStorySearchCriteriaTemp).subscribe((response: any) => {\r\n\r\n // this.userStorySearchList = [];\r\n // let companySettingsModel = [];\r\n\r\n // if (response.success && response.data != null && response.data != undefined && response.data.length > 0) {\r\n // var userStoriesList = response.data;\r\n // this.companySettingsMOdel$ = this.store.pipe(select(sharedModuleReducers.getCompanySettings));\r\n // this.companySettingsMOdel$.subscribe((x) => companySettingsModel = x);\r\n // let bugBoardResult = companySettingsModel.filter(item => item.key.trim() == \"EnableBugBoard\");\r\n // if (bugBoardResult.length > 0) {\r\n // this.isEnableBugBoard = bugBoardResult[0].value == \"1\" ? true : false;\r\n // }\r\n // if (!this.isEnableBugBoard) {\r\n // userStoriesList = userStoriesList.map((x) => x.isBug == false);\r\n // }\r\n\r\n // this.userStorySearchList = userStoriesList.map(function (item) {\r\n // return {\r\n // goalId: item.goalId,\r\n // goalName: item.goalName,\r\n // goalShortName: item.goalShortName,\r\n // goalUniqueName: item.goalUniqueName,\r\n // projectId: item.projectId,\r\n // projectName: item.projectName,\r\n // sprintId: item.sprintId,\r\n // sprintName: item.sprintName,\r\n // userStoryId: item.userStoryId,\r\n // userStoryName: item.userStoryName,\r\n // userStoryStatusName: item.userStoryStatusName,\r\n // userStoryTypeName: item.userStoryTypeName,\r\n // userStoryUniqueName: item.userStoryUniqueName\r\n // }\r\n // });\r\n\r\n // this.cdRef.detectChanges();\r\n // }\r\n // });\r\n // // }\r\n\r\n // let searchGoals = new GoalSearchCriteriaApiInputModel();\r\n // searchGoals.searchText = event.target.value;\r\n // //.replace(/\\s/g, \"\");\r\n // //if (event.target.value.indexOf('-')) {\r\n // this.userService.searchGoals(searchGoals).subscribe((response: any) => {\r\n // this.goalSearchList = [];\r\n\r\n // if (response.success && response.data != null && response.data != undefined && response.data.length > 0) {\r\n // this.goalSearchList = response.data.map(function (item) {\r\n // return {\r\n // goalId: item.goalId,\r\n // goalName: item.goalName,\r\n // goalShortName: item.goalShortName,\r\n // goalUniqueName: item.goalUniqueName,\r\n // projectId: item.projectId,\r\n // projectName: item.projectName\r\n // }\r\n // });\r\n\r\n // this.cdRef.detectChanges();\r\n // }\r\n\r\n // })\r\n // //}\r\n\r\n // if (!(this.items.length > 0) && !(this.employeeList.length > 0) && !(this.recentSearches.length > 0) && !(this.widgets.length > 0) && !(this.tools.length > 0) && !(this.workspaces.length > 0)) {\r\n if (!(this.items.length > 0) && !(this.recentSearches.length > 0) && !(this.widgets.length > 0) && !(this.tools.length > 0) && !(this.workspaces.length > 0)) {\r\n this.itemClicked = this.t = this.ws = this.wd = this.selectedRowIndex = this.selectedEmployeeIndex = this.rs = this.goalIndex = this.users = null\r\n }\r\n if (this.items && this.items.length > 0) {\r\n this.selectedRowIndex = 0;\r\n this.wd = this.ws = this.rs = this.goalIndex = this.users = this.selectedEmployeeIndex = null;\r\n this.t = null;\r\n this.itemClicked = this.items[0];\r\n }\r\n else if (this.tools && this.tools.length > 0) {\r\n this.selectedRowIndex = this.goalIndex = this.selectedEmployeeIndex = this.users = null;\r\n this.wd = this.ws = this.rs = null;\r\n this.t = 0;\r\n this.itemClicked = this.tools[0];\r\n } else if (this.workspaces &&\r\n this.workspaces.length > 0\r\n ) {\r\n this.selectedRowIndex = this.goalIndex = this.selectedEmployeeIndex = this.users = null;\r\n this.wd = this.t = this.rs = null;\r\n this.ws = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (\r\n this.widgets &&\r\n this.widgets.length > 0\r\n ) {\r\n this.selectedRowIndex = this.goalIndex = this.selectedEmployeeIndex = this.users = null;\r\n this.ws = this.t = this.rs = null;\r\n this.wd = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (\r\n this.employeeList &&\r\n this.employeeList.length > 0\r\n ) {\r\n this.selectedRowIndex = null;\r\n this.ws = this.t = this.wd = this.rs = this.goalIndex = this.users = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (\r\n this.recentSearches &&\r\n this.recentSearches.length > 0\r\n ) {\r\n this.selectedRowIndex = null;\r\n this.ws = this.t = this.wd = this.users = this.goalIndex = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n } else {\r\n if (this.menuItem) {\r\n this.items = this.menuItem\r\n .filter(item => item.type != \"dropDown\");\r\n } else {\r\n this.items = [];\r\n }\r\n this.workspaces = this.workspacesForLoop;\r\n this.tools = this.adminTools;\r\n this.widgets = this.originalWidgets;\r\n this.userStorySearchList = [];\r\n this.goalSearchList = [];\r\n this.projectList = [];\r\n this.recentSearches = this.allsearches;\r\n //this.employeeList = (this.loadedEmployeeList && this.loadedEmployeeList.length > 0) ? this.loadedEmployeeList : [];\r\n this.employeeList = [];\r\n // this.ws = this.wd = this.rs = this.t = this.users = this.goalIndex = null;\r\n // this.selectedRowIndex = 0;\r\n // this.itemClicked = this.items.length > 0 ? this.items[0] : null;\r\n this.searchText == \"\" ? (this.searchText = undefined) : null;\r\n }\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n closeSearch(event) {\r\n this.searchText = '';\r\n this.items = this.menuItem\r\n .filter(item => item.type != \"dropDown\")\r\n .sort((a, b) => (a.menu.toLowerCase() > b.menu.toLowerCase() ? 1 : -1));\r\n this.workspaces = this.workspacesForLoop;\r\n this.widgets = this.originalWidgets;\r\n this.tools = this.adminTools;\r\n this.recentSearches = this.allsearches;\r\n this.ws = this.wd = this.rs = this.t = this.users = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n this.itemClicked = this.items[0];\r\n this.display = true;\r\n this.userStorySearchList = [];\r\n this.goalSearchList = [];\r\n this.projectList = [];\r\n this.element.nativeElement.focus();\r\n this.employeeList = this.loadedEmployeeList.length > 0 ? this.loadedEmployeeList : [];\r\n this.isOpened.emit(this.display);\r\n }\r\n\r\n navigate(event, item) {\r\n if (this.searchById) {\r\n this.searchByTextLoading = true;\r\n this.rss.getSearchMenuItems({ searchText: null, searchUniqueId: this.searchText })\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n if (res.data.length > 0) {\r\n this.redirectToRoute(res.data[0]);\r\n } else {\r\n this.toastr.warning('Given Id is not valid, please provide correct id to navigate');\r\n }\r\n } else if (!res.success) {\r\n this.toastr.error(res.apiResponseMessages[0].message);\r\n }\r\n this.searchByTextLoading = false;\r\n });\r\n }\r\n else if (item) {\r\n this.redirectToRoute(item);\r\n }\r\n }\r\n\r\n redirectToRoute(item) {\r\n var name;\r\n if (this.searchByText || this.searchById) {\r\n if (item.itemType && (item.itemType == SearchTaskType.workItemORBug) || (item.itemType == SearchTaskType.adhoc)) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n //this.InsertSearch(item.uniquenName);\r\n //if (this.projectSearchResults.filter(element => element.projectId == item.projectId).length > 0) {\r\n if (item.itemType == SearchTaskType.workItemORBug) {\r\n this.InsertSearch(this.searchById ? item.itemUniqueName : item.itemName, RecentSearchType.workItemOrBug, item.itemId);\r\n this.routes.navigate([\"projects/workitem\", item.itemUniqueName], { fragment: 'unique' });\r\n } else {\r\n this.InsertSearch(this.searchById ? item.itemUniqueName : item.itemName, RecentSearchType.adhoc, item.itemId);\r\n this.routes.navigate([\"dashboard/adhoc-workitem\", item.itemId]);\r\n }\r\n // }\r\n } else if (item.itemType && (item.itemType == SearchTaskType.goal || item.itemType == SearchTaskType.sprint)) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n //if (this.projectSearchResults.filter(element => element.projectId == item.projectId).length > 0) {\r\n if (item.itemType == SearchTaskType.goal) {\r\n this.InsertSearch(this.searchById ? item.itemUniqueName : item.itemName, RecentSearchType.goal, item.itemId);\r\n this.routes.navigate([\"projects/goal\", item.itemUniqueName], { fragment: 'unique' });\r\n } else {\r\n this.InsertSearch(this.searchById ? item.itemUniqueName : item.itemName, RecentSearchType.sprint, item.itemId);\r\n this.routes.navigate([\"projects/sprint\", item.itemUniqueName], { fragment: 'unique' });\r\n }\r\n // }\r\n }\r\n else if (item.itemType == SearchTaskType.Employee) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(this.searchById ? item.itemUniqueName : item.itemName, RecentSearchType.employee, item.itemId);\r\n this.routes.navigateByUrl(\r\n \"/dashboard/profile/\" + item.itemId + \"/overview\"\r\n );\r\n } else if (item.itemType == SearchTaskType.Project) {\r\n this.searchText = '';\r\n this.InsertSearch(this.searchById ? item.itemUniqueName : item.itemName, RecentSearchType.project, item.itemId);\r\n this.element.nativeElement.blur();\r\n this.routes.navigateByUrl(\"projects/projectstatus/\" + item.itemId + \"/active-goals\");\r\n }\r\n }\r\n\r\n else if (item.menu) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n name = item.menu;\r\n this.routes.navigate([item.state]);\r\n this.InsertSearch(name, RecentSearchType.menu, item.id);\r\n }\r\n // else if (item.permission) {\r\n // this.searchText = '';\r\n // this.element.nativeElement.blur();\r\n // name = item.name;\r\n // this.InsertSearch(name, Rece);\r\n // this.routes.navigate([item.link]);\r\n // } \r\n else if (item.workspaceId) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n name = item.workspaceName;\r\n this.InsertSearch(name, RecentSearchType.dashboard, item.workspaceId);\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n if (userReference != \"null\" && userReference != null) {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + item.workspaceId + \"/form/\" + userReference);\r\n } else {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + item.workspaceId);\r\n }\r\n } else if (item.widgetId) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n name = item.widgetName;\r\n this.InsertSearch(name, RecentSearchType.widget, item.widgetId);\r\n this.RedirectToApp(item);\r\n }\r\n else {\r\n this.SearchRecentItem(item, event);\r\n }\r\n }\r\n\r\n\r\n InsertSearch(name, recentSearchType, id) {\r\n this.rss.insertRecentSearch({ name: name, recentSearchType: recentSearchType, itemId: id }).subscribe((response: any) => {\r\n if (response.success) {\r\n // this.recentSearches.includes(name)\r\n // ? (this.recentSearches.splice(this.recentSearches.indexOf(name), 1),\r\n // this.recentSearches.splice(0, 0, name))\r\n // : this.recentSearches.unshift(name);\r\n this.getRecentSearches();\r\n }\r\n });\r\n }\r\n\r\n SearchRecentItem(search, event) {\r\n this.display = true;\r\n this.isOpened.emit(this.display);\r\n if (search.recentSearchType == RecentSearchType.menu) {\r\n var item = this.items.filter(\r\n item =>\r\n item.menu.toLowerCase() == search.recentSearch.toLowerCase()\r\n );\r\n item.length > 0 ? this.navigate(event, item[0]) : null\r\n } else if (search.recentSearchType == RecentSearchType.dashboard) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.dashboard, search.itemId);\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n if (userReference != \"null\" && userReference != null) {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + search.itemId + \"/form/\" + userReference);\r\n } else {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + search.itemId);\r\n }\r\n } else if (search.recentSearchType == RecentSearchType.widget) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.widget, search.itemId);\r\n this.routes.navigate(\r\n [\"dashboard-management/widgets\", search.itemId]\r\n );\r\n } else if (search.recentSearchType == RecentSearchType.adhoc) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.adhoc, search.itemId);\r\n this.routes.navigate([\"dashboard/adhoc-workitem\", search.itemId]);\r\n } else if (search.recentSearchType == RecentSearchType.workItemOrBug) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.workItemOrBug, search.itemId);\r\n this.routes.navigate([\"projects/workitem\", search.itemUniqueName], { fragment: 'unique' });\r\n } else if (search.recentSearchType == RecentSearchType.goal) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.goal, search.itemId);\r\n this.routes.navigate([\"projects/goal\", search.itemUniqueName], { fragment: 'unique' });\r\n } else if (search.recentSearchType == RecentSearchType.sprint) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.sprint, search.itemId);\r\n this.routes.navigate([\"projects/sprint\", search.itemUniqueName], { fragment: 'unique' });\r\n } else if (search.recentSearchType == RecentSearchType.project) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.project, search.itemId);\r\n this.routes.navigateByUrl(\"projects/projectstatus/\" + search.itemId + \"/active-goals\");\r\n } else if (search.recentSearchType == RecentSearchType.employee) {\r\n this.searchText = '';\r\n this.element.nativeElement.blur();\r\n this.InsertSearch(search.recentSearch, RecentSearchType.employee, search.itemId);\r\n this.routes.navigateByUrl(\r\n \"/dashboard/profile/\" + search.itemId + \"/overview\"\r\n );\r\n }\r\n event.stopPropagation();\r\n event.preventDefault();\r\n }\r\n\r\n selectMenu(event, click) {\r\n if (click.which == 1 && event.workspaceId != undefined) {\r\n this.display = false;\r\n this.searchByText = false;\r\n this.searchById = false;\r\n this.isOpened.emit(this.display);\r\n this.searchText = '';\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n if (userReference != \"null\" && userReference != null) {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + event.workspaceId + \"/form/\" + userReference);\r\n } else {\r\n this.routes.navigateByUrl(\"dashboard-management/dashboard/\" + event.workspaceId);\r\n }\r\n this.selectedDashboard = event.workspaceId;\r\n this.element.nativeElement.blur();\r\n this.menuItemName = event.workspaceName;\r\n this.rss\r\n .insertRecentSearch({ name: event.workspaceName, recentSearchType: RecentSearchType.dashboard, itemId: event.workspaceId })\r\n .subscribe((response: any) => {\r\n if (response.success) {\r\n // this.recentSearches.includes(event.workspaceName)\r\n // ? (this.recentSearches.splice(\r\n // this.recentSearches.indexOf(event.workspaceName),\r\n // 1\r\n // ),\r\n // this.recentSearches.splice(0, 0, event.workspaceName))\r\n // : this.recentSearches.unshift(event.workspaceName);\r\n this.getRecentSearches();\r\n }\r\n });\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n selectEmployee(event, click) {\r\n if (click.which == 1) {\r\n this.display = false;\r\n this.searchByText = false;\r\n this.searchById = false;\r\n this.isOpened.emit(this.display);\r\n this.searchText = '';\r\n this.routes.navigateByUrl(\r\n \"/dashboard/profile/\" + event.itemId + \"/overview\"\r\n );\r\n this.selectedDashboard = event.workspaceId;\r\n this.selectedEmployee = event.itemId;\r\n this.element.nativeElement.blur();\r\n this.menuItemName = event.itemName;\r\n this.rss\r\n .insertRecentSearch({ name: event.itemName, recentSearchType: RecentSearchType.employee, itemId: event.itemId })\r\n .subscribe((response: any) => {\r\n if (response.success) {\r\n this.rss.getRecentSearch().subscribe((responseData: any) => {\r\n if (responseData.success) {\r\n this.allsearches = responseData.data;\r\n localStorage.setItem(LocalStorageProperties.RecentSearches, JSON.stringify(this.allsearches));\r\n this.recentSearches = responseData.data;\r\n }\r\n });\r\n }\r\n });\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n\r\n selectAdimnTool(link, event, item) {\r\n if (event.which == 1) {\r\n this.display = false;\r\n this.searchByText = false;\r\n this.searchById = false;\r\n this.isOpened.emit(this.display);\r\n this.searchText = '';\r\n this.routes.navigate([link]);\r\n this.element.nativeElement.blur();\r\n this.rss.insertRecentSearch({ name: item.menu, recentSearchType: RecentSearchType.menu, itemId: item.id }).subscribe((response: any) => {\r\n if (response.success) {\r\n // this.recentSearches.includes(name)\r\n // ? (this.recentSearches.splice(this.recentSearches.indexOf(name), 1),\r\n // this.recentSearches.splice(0, 0, name))\r\n // : this.recentSearches.unshift(name);\r\n this.getRecentSearches();\r\n }\r\n });\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n\r\n OnSelect(widget, event) {\r\n if (event.which == 1) {\r\n this.searchText = '';\r\n this.RedirectToApp(widget);\r\n this.rss\r\n .insertRecentSearch({ name: widget.widgetName, recentSearchType: RecentSearchType.widget, itemId: widget.widgetId })\r\n .subscribe((response: any) => {\r\n if (response.success) {\r\n // this.recentSearches.includes(widget.widgetName)\r\n // ? (this.recentSearches.splice(\r\n // this.recentSearches.indexOf(widget.widgetName),\r\n // 1\r\n // ),\r\n // this.recentSearches.splice(0, 0, widget.widgetName))\r\n // : this.recentSearches.unshift(widget.widgetName);\r\n this.getRecentSearches();\r\n }\r\n });\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n\r\n getRecentSearches() {\r\n this.recentSearchesfetchInProgress = true;\r\n this.rss.getRecentSearch().subscribe((responseData: any) => {\r\n if (responseData.success) {\r\n this.allsearches = responseData.data;\r\n this.recentSearches = responseData.data;\r\n localStorage.setItem(LocalStorageProperties.RecentSearches, JSON.stringify(this.allsearches));\r\n this.recentSearchesfetchInProgress = false;\r\n this.cdRef.detectChanges();\r\n }\r\n });\r\n }\r\n\r\n RedirectToApp(widget) {\r\n this.routes.navigate(\r\n [\"dashboard-management/widgets\", widget.widgetId]\r\n );\r\n }\r\n\r\n\r\n\r\n OnGoalSelect(goal, event) {\r\n if (event.which == 1) {\r\n this.searchText = '';\r\n this.RedirectToGoal(goal);\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n RedirectToGoal(goal) {\r\n //if (this.projectSearchResults.filter(item => item.projectId == goal.projectId).length > 0) {\r\n if (goal.itemType == SearchTaskType.goal) {\r\n this.InsertSearch(goal.itemName, RecentSearchType.goal, goal.itemId);\r\n this.routes.navigate([\"projects/goal\", goal.itemUniqueName], { fragment: 'unique' });\r\n } else {\r\n this.InsertSearch(goal.itemName, RecentSearchType.sprint, goal.itemId);\r\n this.routes.navigate([\"projects/sprint\", goal.itemUniqueName], { fragment: 'unique' });\r\n }\r\n this.goalSearchList = [];\r\n this.display = true;\r\n this.isOpened.emit(this.display);\r\n }\r\n // }\r\n\r\n OnUserStorySelect(userStory, event) {\r\n if (event.which == 1) {\r\n this.searchText = '';\r\n this.RedirectToUserStory(userStory);\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n RedirectToUserStory(userStory) {\r\n //if (this.projectSearchResults.filter(item => item.projectId == userStory.projectId).length > 0) {\r\n if (userStory.itemType == SearchTaskType.workItemORBug) {\r\n this.InsertSearch(userStory.itemName, RecentSearchType.workItemOrBug, userStory.itemId);\r\n this.routes.navigate([\"projects/workitem\", userStory.itemUniqueName], { fragment: 'unique' });\r\n } else {\r\n this.InsertSearch(userStory.itemName, RecentSearchType.adhoc, userStory.itemId);\r\n this.routes.navigate([\"dashboard/adhoc-workitem\", userStory.itemId]);\r\n }\r\n this.userStorySearchList = [];\r\n this.display = true;\r\n this.isOpened.emit(this.display);\r\n }\r\n // }\r\n\r\n Set() {\r\n this.display = false;\r\n this.isOpened.emit(this.display);\r\n // if (\r\n // this.searchText == undefined ||\r\n // this.searchText == null ||\r\n // this.searchText === \"\"\r\n // ) {\r\n // this.ws = this.wd = this.rs = this.selectedEmployeeIndex = this.t = null;\r\n // this.selectedRowIndex = 0;\r\n // this.itemClicked = this.items[0];\r\n // }\r\n }\r\n arrowDownEventForSearchByText() {\r\n if (this.itemClicked.itemType == SearchTaskType.Project && this.projectIndex < this.projectList.length - 1) {\r\n document.getElementById(\"style-7\").scrollTop += 45;\r\n this.projectIndex++;\r\n this.itemClicked = this.projectList[this.projectIndex];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Project && this.projectIndex == this.projectList.length - 1 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.selectedEmployeeIndex = this.projectIndex = this.goalIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Project && this.projectIndex == this.projectList.length - 1 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.selectedEmployeeIndex = this.projectIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Project && this.projectIndex == this.projectList.length - 1 && this.employeeList && this.employeeList.length > 0) {\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.goalIndex = this.projectIndex = this.users = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.users < this.userStorySearchList.length - 1) {\r\n document.getElementById(\"style-5\").scrollTop += 45;\r\n this.users++;\r\n this.itemClicked = this.userStorySearchList[this.users];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.users == this.userStorySearchList.length - 1\r\n && this.goalSearchList && this.goalSearchList.length > 0) {\r\n document.getElementById(\"style-6\").scrollTop += 45;\r\n this.selectedEmployeeIndex = this.projectIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.users == this.userStorySearchList.length - 1\r\n && this.employeeList && this.employeeList.length > 0) {\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.goalIndex = this.projectIndex = this.users = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.goalIndex < this.goalSearchList.length - 1) {\r\n document.getElementById(\"style-6\").scrollTop += 45;\r\n this.goalIndex++;\r\n this.itemClicked = this.goalSearchList[this.goalIndex];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.goalIndex == this.goalSearchList.length - 1\r\n && this.employeeList && this.employeeList.length > 0) {\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.goalIndex = this.projectIndex = this.users = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.selectedEmployeeIndex < this.employeeList.length - 1) {\r\n document.getElementById(\"style-4\").scrollTop += 45;\r\n this.selectedEmployeeIndex++;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n }\r\n }\r\n arrowDownEvent() {\r\n // if (\r\n // this.searchText != undefined ||\r\n // this.searchText != null ||\r\n // this.searchText === \"\"\r\n // ) {\r\n // return;\r\n // }\r\n if (this.searchByText && this.searchText) {\r\n this.arrowDownEventForSearchByText();\r\n }\r\n else if (\r\n this.itemClicked.menu &&\r\n this.selectedRowIndex < this.items.length - 1\r\n ) {\r\n //this.menuElement.nativeElement.scrollBy(0, 100);\r\n document.getElementById(\"style-1\").scrollTop += 45;\r\n this.selectedRowIndex++;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n // this.highlight(nextrow);\r\n } else if (\r\n this.itemClicked.workspaceId &&\r\n this.ws < this.workspaces.length - 1\r\n ) {\r\n this.ws++;\r\n document.getElementById(\"style-2\").scrollTop += 41;\r\n this.itemClicked = this.workspaces[this.ws];\r\n // this.highlight(nextrow);\r\n } else if (this.itemClicked.widgetId && this.wd < this.widgets.length - 1) {\r\n document.getElementById(\"style-3\").scrollTop += 48;\r\n this.wd++;\r\n this.itemClicked = this.widgets[this.wd];\r\n } else if (this.itemClicked.employeeNumber && this.selectedEmployeeIndex < this.employeeList.length - 1) {\r\n document.getElementById(\"style-4\").scrollTop += 45;\r\n this.selectedEmployeeIndex++;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n // this.highlight(nextrow);\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.users < this.userStorySearchList.length - 1) {\r\n document.getElementById(\"style-5\").scrollTop += 45;\r\n this.users++;\r\n this.itemClicked = this.userStorySearchList[this.users];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.goalIndex < this.goalSearchList.length - 1) {\r\n document.getElementById(\"style-6\").scrollTop += 45;\r\n this.goalIndex++;\r\n this.itemClicked = this.goalSearchList[this.goalIndex];\r\n } else if (this.itemClicked.recentSearch && this.rs < 8) {\r\n this.rs++;\r\n this.itemClicked = this.recentSearches[this.rs];\r\n } else if (this.itemClicked.menu && this.selectedRowIndex == this.items.length - 1 && this.workspaces && this.workspaces.length > 0) {\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.t = null;\r\n this.wd = this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.menu && this.selectedRowIndex == this.items.length - 1 && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = null;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.t = this.ws = this.rs = this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.wd = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.menu && this.selectedRowIndex == this.items.length - 1 && this.employeeList && this.employeeList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.menu && this.selectedRowIndex == this.items.length - 1 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.menu && this.selectedRowIndex == this.items.length - 1 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.menu && this.selectedRowIndex == this.items.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n this.t = null;\r\n this.wd = this.goalIndex = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = null;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.t = this.ws = this.rs = this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.wd = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.employeeList && this.employeeList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n this.t = null;\r\n this.wd = this.goalIndex = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n } else if (this.itemClicked.widgetId && this.wd == this.widgets.length - 1 && this.employeeList && this.employeeList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.widgetId && this.wd == this.widgets.length - 1 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.widgetId && this.wd == this.widgets.length - 1 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.widgetId && this.wd == this.widgets.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n this.t = null;\r\n this.wd = this.goalIndex = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n } else if (this.itemClicked.employeeNumber && this.selectedEmployeeIndex == this.employeeList.length - 1 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.employeeNumber && this.selectedEmployeeIndex == this.employeeList.length - 1 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.employeeNumber && this.selectedEmployeeIndex == this.employeeList.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n this.t = null;\r\n this.wd = this.goalIndex = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) &&\r\n this.users == this.userStorySearchList.length - 1 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.wd = this.rs = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) &&\r\n this.users == this.userStorySearchList.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n this.t = null;\r\n this.wd = this.goalIndex = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) &&\r\n this.goalIndex == this.goalSearchList.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n this.t = null;\r\n this.wd = this.goalIndex = this.selectedRowIndex = this.t = this.ws = this.selectedEmployeeIndex = this.users = null;\r\n this.rs = 0;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n\r\n\r\n // else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.widgets && this.widgets.length > 0) {\r\n // document.getElementById(\"style-4\").scrollTop = 0;\r\n // this.t = null;\r\n // this.ws = this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = null;\r\n // this.wd = 0;\r\n // this.itemClicked = this.widgets[0];\r\n // } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.employeeList && this.employeeList.length > 0) {\r\n // document.getElementById(\"style-3\").scrollTop = 0;\r\n // this.wd = null;\r\n // this.ws = this.rs = this.selectedRowIndex = null;\r\n // this.selectedEmployeeIndex = 0;\r\n // this.itemClicked = this.employeeList[0];\r\n // } else if (this.itemClicked.workspaceId && this.ws == this.workspaces.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n // this.wd = null;\r\n // this.ws = this.rs = this.selectedEmployeeIndex = this.selectedRowIndex = null;\r\n // this.rs = 0;\r\n // this.itemClicked = this.recentSearches[0];\r\n // } else if (this.itemClicked.widgetId && this.wd == 8 && this.employeeList && this.employeeList.length > 0) {\r\n // document.getElementById(\"style-3\").scrollTop = 0;\r\n // this.wd = null;\r\n // this.ws = this.rs = this.selectedRowIndex = null;\r\n // this.rs = null;\r\n // this.selectedEmployeeIndex = 0\r\n // this.itemClicked = this.employeeList[0];\r\n // }\r\n // else if (this.itemClicked.widgetId && this.wd == 8 && this.recentSearches && this.recentSearches.length > 0) {\r\n // this.wd = null;\r\n // this.ws = this.rs = this.selectedEmployeeIndex = this.selectedRowIndex = null;\r\n // this.rs = 0;\r\n // this.itemClicked = this.recentSearches[0];\r\n // }\r\n // else if (this.itemClicked.fullName && this.selectedEmployeeIndex == this.employeeList.length - 1 && this.recentSearches && this.recentSearches.length > 0) {\r\n // this.wd = null;\r\n // this.ws = this.rs = this.selectedEmployeeIndex = this.selectedRowIndex = null;\r\n // this.rs = 0;\r\n // this.itemClicked = this.recentSearches[0];\r\n // }\r\n // else {\r\n // if (this.rs !== null && this.rs !== undefined && this.recentSearches.length > 8 && this.rs < 8) {\r\n // this.rs++;\r\n // this.itemClicked = this.recentSearches[this.rs];\r\n // // this.highlight(nextrow);\r\n // }\r\n // else if (this.rs !== null && this.rs !== undefined && (this.recentSearches.length) - 1 > this.rs && this.rs < 8) {\r\n // this.rs++;\r\n // this.itemClicked = this.recentSearches[this.rs];\r\n // }\r\n // }\r\n\r\n\r\n }\r\n arrowUpEventForSearchByText() {\r\n if (this.itemClicked.itemType == SearchTaskType.Project && this.projectIndex > 0) {\r\n this.projectIndex--;\r\n document.getElementById(\"style-7\").scrollTop -= 45;\r\n this.itemClicked = this.projectList[this.projectIndex];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.itemClicked.itemId == this.userStorySearchList[0].itemId && this.users == 0 && this.projectList && this.projectList.length > 0) {\r\n this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.projectIndex = this.projectList.length - 1;\r\n this.itemClicked = this.projectList[this.projectIndex];\r\n document.getElementById(\"style-7\").scrollTop = document.getElementById(\"style-7\").scrollHeight;\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.users > 0) {\r\n this.users--;\r\n document.getElementById(\"style-5\").scrollTop -= 45;\r\n this.itemClicked = this.userStorySearchList[this.users];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.itemClicked.itemId == this.goalSearchList[0].itemId && this.goalIndex == 0 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.projectIndex = this.goalIndex = this.selectedEmployeeIndex = null;\r\n this.users = this.userStorySearchList.length - 1;\r\n this.itemClicked = this.userStorySearchList[this.users];\r\n document.getElementById(\"style-5\").scrollTop = document.getElementById(\"style-5\").scrollHeight;\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.itemClicked.itemId == this.goalSearchList[0].itemId && this.goalIndex == 0 && this.projectList && this.projectList.length > 0) {\r\n this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.projectIndex = this.projectList.length - 1;\r\n this.itemClicked = this.projectList[this.projectIndex];\r\n document.getElementById(\"style-7\").scrollTop = document.getElementById(\"style-7\").scrollHeight;\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.goalIndex > 0) {\r\n this.goalIndex--;\r\n document.getElementById(\"style-6\").scrollTop -= 45;\r\n this.itemClicked = this.goalSearchList[this.goalIndex];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.itemClicked.itemId == this.employeeList[0].itemId && this.selectedEmployeeIndex == 0 && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.projectIndex = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = this.goalSearchList.length - 1;\r\n this.itemClicked = this.goalSearchList[this.goalIndex];\r\n document.getElementById(\"style-6\").scrollTop = document.getElementById(\"style-6\").scrollHeight;\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.itemClicked.itemId == this.employeeList[0].itemId && this.selectedEmployeeIndex == 0 && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.projectIndex = this.goalIndex = this.selectedEmployeeIndex = null;\r\n this.users = this.userStorySearchList.length - 1;\r\n this.itemClicked = this.userStorySearchList[this.users];\r\n document.getElementById(\"style-5\").scrollTop = document.getElementById(\"style-5\").scrollHeight;\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.itemClicked.itemId == this.employeeList[0].itemId && this.selectedEmployeeIndex == 0 && this.projectList && this.projectList.length > 0) {\r\n this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.projectIndex = this.projectList.length - 1;\r\n this.itemClicked = this.projectList[this.projectIndex];\r\n document.getElementById(\"style-7\").scrollTop = document.getElementById(\"style-7\").scrollHeight;\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.selectedEmployeeIndex > 0) {\r\n this.selectedEmployeeIndex--;\r\n document.getElementById(\"style-4\").scrollTop -= 45;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n }\r\n }\r\n arrowUpEvent() {\r\n // if (\r\n // this.searchText != undefined ||\r\n // this.searchText != null ||\r\n // this.searchText === \"\"\r\n // ) {\r\n // return;\r\n // } \r\n if (this.searchByText && this.searchText) {\r\n this.arrowUpEventForSearchByText();\r\n }\r\n //From menus\r\n else if (this.itemClicked.menu && this.selectedRowIndex > 0) {\r\n this.selectedRowIndex--;\r\n document.getElementById(\"style-1\").scrollTop -= 45;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n }\r\n //From workspaces\r\n else if (\r\n this.itemClicked.workspaceId &&\r\n this.itemClicked.workspaceId == this.workspaces[0].workspaceId && this.ws == 0 &&\r\n this.items && this.items.length > 0\r\n ) {\r\n this.ws = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.selectedRowIndex = this.items.length - 1;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n } else if (this.itemClicked.workspaceId && this.ws > 0) {\r\n document.getElementById(\"style-2\").scrollTop -= 41;\r\n this.ws--;\r\n this.itemClicked = this.workspaces[this.ws];\r\n }\r\n //From widgets \r\n else if (this.itemClicked.widgetId && this.wd > 0) {\r\n document.getElementById(\"style-3\").scrollTop -= 48;\r\n this.wd--;\r\n this.itemClicked = this.widgets[this.wd];\r\n } else if (this.itemClicked.widgetId && this.itemClicked.widgetId == this.widgets[0].widgetId && this.wd == 0 &&\r\n this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.ws = this.workspaces.length - 1;\r\n this.itemClicked = this.workspaces[this.ws];\r\n document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n } else if (this.itemClicked.widgetId && this.itemClicked.widgetId == this.widgets[0].widgetId && this.wd == 0 &&\r\n this.items && this.items.length > 0) {\r\n this.ws = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.selectedRowIndex = this.items.length - 1;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n }\r\n //From Employees \r\n else if (this.itemClicked.employeeNumber && this.selectedEmployeeIndex > 0) {\r\n document.getElementById(\"style-4\").scrollTop -= 45;\r\n this.selectedEmployeeIndex--;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n } else if (this.itemClicked.employeeNumber && this.itemClicked.employeeNumber == this.employeeList[0].employeeNumber && this.selectedEmployeeIndex == 0 &&\r\n this.widgets && this.widgets.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.wd = this.widgets.length - 1;\r\n this.itemClicked = this.widgets[this.wd];\r\n document.getElementById(\"style-3\").scrollTop = document.getElementById(\"style-3\").scrollHeight;\r\n } else if (this.itemClicked.employeeNumber && this.itemClicked.employeeNumber == this.employeeList[0].employeeNumber && this.selectedEmployeeIndex == 0 &&\r\n this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.ws = this.workspaces.length - 1;\r\n this.itemClicked = this.workspaces[this.ws];\r\n document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n } else if (this.itemClicked.employeeNumber && this.itemClicked.employeeNumber == this.employeeList[0].employeeNumber && this.selectedEmployeeIndex == 0 &&\r\n this.workspaces && this.workspaces.length > 0) {\r\n this.ws = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.selectedRowIndex = this.items.length - 1;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n }\r\n //From WI/Bug NEED TO DO \r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.users > 0) {\r\n document.getElementById(\"style-5\").scrollTop -= 45;\r\n this.users--;\r\n this.itemClicked = this.userStorySearchList[this.users];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) &&\r\n this.users == 0 && this.employeeList && this.employeeList.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.users = this.wd = this.goalIndex = this.rs = null;\r\n this.selectedEmployeeIndex = this.employeeList.length - 1;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n document.getElementById(\"style-4\").scrollTop = document.getElementById(\"style-4\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) &&\r\n this.users == 0 && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = this.t = this.ws = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.wd = this.widgets.length - 1;\r\n this.itemClicked = this.widgets[this.wd];\r\n document.getElementById(\"style-3\").scrollTop = document.getElementById(\"style-3\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) &&\r\n this.users == 0 && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.ws = this.workspaces.length - 1;\r\n this.itemClicked = this.workspaces[this.ws];\r\n document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) &&\r\n this.users == 0 && this.workspaces && this.workspaces.length > 0) {\r\n this.ws = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.selectedRowIndex = this.items.length - 1;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n }\r\n //From goal/sprint\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint)\r\n && this.goalIndex > 0) {\r\n document.getElementById(\"style-6\").scrollTop -= 45;\r\n this.goalIndex--;\r\n this.itemClicked = this.goalSearchList[this.goalIndex];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) &&\r\n this.goalIndex == 0 && this.userStoryList && this.userStoryList.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.selectedEmployeeIndex = this.wd = this.goalIndex = this.rs = null;\r\n this.users = this.employeeList.length - 1;\r\n this.itemClicked = this.userStoryList[this.users];\r\n document.getElementById(\"style-5\").scrollTop = document.getElementById(\"style-5\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) &&\r\n this.goalIndex == 0 && this.employeeList && this.employeeList.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.users = this.wd = this.goalIndex = this.rs = null;\r\n this.selectedEmployeeIndex = this.employeeList.length - 1;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n document.getElementById(\"style-4\").scrollTop = document.getElementById(\"style-4\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) &&\r\n this.goalIndex == 0 && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = this.t = this.ws = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.wd = this.widgets.length - 1;\r\n this.itemClicked = this.widgets[this.wd];\r\n document.getElementById(\"style-3\").scrollTop = document.getElementById(\"style-3\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemTypetype == SearchTaskType.sprint) &&\r\n this.goalIndex == 0 && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.ws = this.workspaces.length - 1;\r\n this.itemClicked = this.workspaces[this.ws];\r\n document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) &&\r\n this.goalIndex == 0 && this.workspaces && this.workspaces.length > 0) {\r\n this.ws = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.selectedRowIndex = this.items.length - 1;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n }\r\n //From recent searches\r\n else if (this.itemClicked.recentSearch && this.rs > 0) {\r\n this.rs--;\r\n this.itemClicked = this.recentSearches[this.rs];\r\n } else if (this.itemClicked.recentSearch && this.rs == 0 &&\r\n this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.users = this.selectedEmployeeIndex = this.wd = this.rs = null;\r\n this.goalIndex = this.goalSearchList.length - 1;\r\n this.itemClicked = this.goalSearchList[this.goalIndex];\r\n document.getElementById(\"style-6\").scrollTop = document.getElementById(\"style-6\").scrollHeight;\r\n } else if (this.itemClicked.recentSearch && this.rs == 0 &&\r\n this.userStoryList && this.userStoryList.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.wd = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.users = this.userStoryList.length - 1;\r\n this.itemClicked = this.userStoryList[this.users];\r\n document.getElementById(\"style-5\").scrollTop = document.getElementById(\"style-5\").scrollHeight;\r\n } else if (this.itemClicked.recentSearch && this.rs == 0 &&\r\n this.employeeList && this.employeeList.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.wd = this.wd = this.goalIndex = this.rs = null;\r\n this.selectedEmployeeIndex = this.employeeList.length - 1;\r\n this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n document.getElementById(\"style-4\").scrollTop = document.getElementById(\"style-4\").scrollHeight;\r\n } else if (this.itemClicked.recentSearch && this.rs == 0 &&\r\n this.widgets && this.widgets.length > 0) {\r\n this.ws = this.t = this.selectedRowIndex = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.wd = this.widgets.length - 1;\r\n this.itemClicked = this.widgets[this.wd];\r\n document.getElementById(\"style-3\").scrollTop = document.getElementById(\"style-3\").scrollHeight;\r\n } else if (this.itemClicked.recentSearch && this.rs == 0 &&\r\n this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.ws = this.workspaces.length - 1;\r\n this.itemClicked = this.workspaces[this.ws];\r\n document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n } else if (this.itemClicked.recentSearch && this.rs == 0 &&\r\n this.workspaces && this.workspaces.length > 0) {\r\n this.ws = this.t = this.wd = this.users = this.selectedEmployeeIndex = this.goalIndex = this.rs = null;\r\n this.selectedRowIndex = this.items.length - 1;\r\n this.itemClicked = this.items[this.selectedRowIndex];\r\n document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n }\r\n\r\n\r\n // else if (this.itemClicked.recentSearch && this.rs == 0 && this.employeeList && this.employeeList.length > 0) {\r\n // document.getElementById(\"style-3\").scrollTop = document.getElementById(\"style-3\").scrollHeight;\r\n // this.selectedEmployeeIndex = this.employeeList.length - 1;\r\n // this.rs = this.t = this.ws = this.wd = this.selectedRowIndex = null;\r\n // this.itemClicked = this.employeeList[this.selectedEmployeeIndex];\r\n // } else if (this.itemClicked.recentSearch && this.rs == 0 && this.widgets && this.widgets.length > 0) {\r\n // this.wd = this.widgets.length - 1;\r\n // this.rs = this.selectedRowIndex = this.t = this.selectedEmployeeIndex = this.ws = null;\r\n // this.itemClicked = this.widgets[this.wd];\r\n // } else if (this.itemClicked.recentSearch && this.rs == 0 && this.workspaces && this.workspaces.length > 0) {\r\n // this.ws = this.workspaces.length - 1;\r\n // this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.t = this.wd = null;\r\n // this.itemClicked = this.workspaces[this.ws];\r\n // } else if (this.itemClicked.recentSearch && this.rs == 0 && this.tools && this.tools.length > 0) {\r\n // this.t = this.tools.length - 1;\r\n // this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.ws = this.wd = null;\r\n // this.itemClicked = this.workspaces[this.t];\r\n // } else if (this.itemClicked.recentSearch && this.rs == 0 && this.items && this.items.length > 0) {\r\n // this.selectedRowIndex = this.items.length - 1;\r\n // this.rs = this.t = this.ws = this.selectedEmployeeIndex = this.wd = null;\r\n // this.itemClicked = this.items[this.t];\r\n // } else if (this.itemClicked.fullName && this.selectedEmployeeIndex == 0 && this.widgets && this.widgets.length > 0) {\r\n // document.getElementById(\"style-4\").scrollTop = document.getElementById(\"style-4\").scrollHeight;\r\n // this.wd = 8;\r\n // this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.t = this.ws = null;\r\n // this.itemClicked = this.widgets[this.wd];\r\n // } else if (this.itemClicked.fullName && this.selectedEmployeeIndex == 0 && this.workspaces && this.workspaces.length > 0) {\r\n // this.ws = this.workspaces.length - 1;\r\n // this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.t = this.wd = null;\r\n // this.itemClicked = this.workspaces[this.ws];\r\n // } else if (this.itemClicked.fullName && this.selectedEmployeeIndex == 0 && this.tools && this.tools.length > 0) {\r\n // this.t = this.tools.length - 1;\r\n // this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.ws = this.wd = null;\r\n // this.itemClicked = this.workspaces[this.t];\r\n // } else if (this.itemClicked.fullName && this.selectedEmployeeIndex == 0 && this.items && this.items.length > 0) {\r\n // this.selectedRowIndex = this.items.length - 1;\r\n // this.rs = this.t = this.ws = this.selectedEmployeeIndex = this.wd = null;\r\n // this.itemClicked = this.items[this.t];\r\n // } else if (this.itemClicked.widgetId && this.wd == 0 && this.workspaces && this.workspaces.length > 0) {\r\n // document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n // this.ws = this.workspaces.length - 1;\r\n // this.rs = this.selectedRowIndex = this.t = this.wd = null;\r\n // this.itemClicked = this.workspaces[this.ws];\r\n // document.getElementById(\"style-2\").scrollTop = document.getElementById(\"style-2\").scrollHeight;\r\n // } else if (this.itemClicked.widgetId && this.wd == 0 && this.tools && this.tools.length > 0) {\r\n // this.t = this.tools.length - 1;\r\n // this.rs = this.selectedRowIndex = this.ws = this.wd = null;\r\n // this.itemClicked = this.workspaces[this.t];\r\n // } else if (this.itemClicked.widgetId && this.wd == 0 && this.items && this.items.length > 0) {\r\n // this.selectedRowIndex = this.items.length - 1;\r\n // this.rs = this.t = this.ws = this.wd = null;\r\n // this.itemClicked = this.items[this.t];\r\n // } else if (this.itemClicked.workspaceId && this.ws == 0 && this.tools && this.tools.length > 0) {\r\n // this.t = this.tools.length - 1;\r\n // this.rs = this.selectedRowIndex = this.ws = this.wd = null;\r\n // this.itemClicked = this.tools[this.t];\r\n // } else if (this.itemClicked.workspaceId && this.ws == 0 && this.items && this.items.length > 0) {\r\n // this.selectedRowIndex = this.items.length - 1;\r\n // this.rs = this.t = this.ws = this.wd = null;\r\n // this.itemClicked = this.items[this.selectedRowIndex];\r\n // } else if (this.itemClicked.permission && this.t == 0 && this.items && this.items.length > 0) {\r\n // this.selectedRowIndex = this.items.length - 1;\r\n // this.rs = this.t = this.ws = this.wd = null;\r\n // document.getElementById(\"style-1\").scrollTop = document.getElementById(\"style-1\").scrollHeight;\r\n // this.itemClicked = this.items[this.selectedRowIndex];\r\n // } else {\r\n // if (this.rs !== null && this.rs !== undefined && this.rs > 0) {\r\n // this.rs--;\r\n // this.itemClicked = this.recentSearches[this.rs];\r\n // // this.highlight(nextrow);\r\n // }\r\n // }\r\n }\r\n arrowLeftEventForSearchByText() {\r\n if (this.itemClicked.itemType == SearchTaskType.Project) {\r\n return;\r\n }\r\n else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.projectList && this.projectList.length > 0) {\r\n document.getElementById(\"style-7\").scrollTop = 0;\r\n this.users = this.goalIndex = this.selectedEmployeeIndex = null\r\n this.projectIndex = 0;\r\n this.itemClicked = this.projectList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.projectIndex = this.goalIndex = this.selectedEmployeeIndex = null\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.projectList && this.projectList.length > 0) {\r\n document.getElementById(\"style-7\").scrollTop = 0;\r\n this.users = this.goalIndex = this.selectedEmployeeIndex = null\r\n this.projectIndex = 0;\r\n this.itemClicked = this.projectList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.goalSearchList && this.goalSearchList.length > 0) {\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.projectIndex = this.users = this.selectedEmployeeIndex = null\r\n this.goalIndex = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.projectIndex = this.goalIndex = this.selectedEmployeeIndex = null\r\n this.users = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Employee && this.projectList && this.projectList.length > 0) {\r\n document.getElementById(\"style-7\").scrollTop = 0;\r\n this.users = this.goalIndex = this.selectedEmployeeIndex = null\r\n this.projectIndex = 0;\r\n this.itemClicked = this.projectList[0];\r\n }\r\n }\r\n arrowLeftEvent() {\r\n // if (\r\n // this.searchText != undefined ||\r\n // this.searchText != null ||\r\n // this.searchText === \"\"\r\n // ) {\r\n // return;\r\n // }\r\n if (this.searchByText && this.searchText) {\r\n this.arrowLeftEventForSearchByText();\r\n }\r\n else if (this.itemClicked.menu) {\r\n return;\r\n }\r\n //From workspaces\r\n else if (this.itemClicked.workspaceId && this.items && this.items.length > 0) {\r\n document.getElementById(\"style-1\").scrollTop = 0;\r\n this.t = this.wd = this.ws = this.rs = this.selectedEmployeeIndex = this.users = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n this.itemClicked = this.items[0];\r\n }\r\n //from widgets\r\n else if (this.itemClicked.widgetId && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.widgetId && this.items && this.items.length > 0) {\r\n this.ws = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n document.getElementById(\"style-1\").scrollTop = 0;\r\n this.itemClicked = this.items[0];\r\n }\r\n //From employees\r\n else if (this.itemClicked.employeeNumber && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.wd = 0;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.employeeNumber && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.employeeNumber && this.items && this.items.length > 0) {\r\n this.ws = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n document.getElementById(\"style-1\").scrollTop = 0;\r\n this.itemClicked = this.items[0];\r\n }\r\n //From WI/Bug\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.employeeList && this.employeeList.length > 0) {\r\n this.selectedRowIndex = this.wd = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.itemClicked = this.employeeList[0];\r\n }\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.wd = 0;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.items && this.items.length > 0) {\r\n this.ws = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n document.getElementById(\"style-1\").scrollTop = 0;\r\n this.itemClicked = this.items[0];\r\n }\r\n //From Goal/Sprint\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint)\r\n && this.userStoryList && this.userStoryList.length > 0) {\r\n this.selectedRowIndex = this.wd = this.ws = this.t = this.rs = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.users = 0;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.itemClicked = this.userStoryList[0];\r\n }\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint)\r\n && this.employeeList && this.employeeList.length > 0) {\r\n this.selectedRowIndex = this.wd = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.itemClicked = this.employeeList[0];\r\n }\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint)\r\n && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.wd = 0;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint)\r\n && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint)\r\n && this.items && this.items.length > 0) {\r\n this.ws = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n document.getElementById(\"style-1\").scrollTop = 0;\r\n this.itemClicked = this.items[0];\r\n }\r\n //From recent searches\r\n else if (this.itemClicked.recentSearch\r\n && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.selectedRowIndex = this.wd = this.ws = this.t = this.rs = this.selectedEmployeeIndex = this.users = null;\r\n this.goalIndex = 0;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n }\r\n else if (this.itemClicked.recentSearch\r\n && this.userStoryList && this.userStoryList.length > 0) {\r\n this.selectedRowIndex = this.wd = this.ws = this.t = this.rs = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.users = 0;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.itemClicked = this.userStoryList[0];\r\n }\r\n else if (this.itemClicked.recentSearch\r\n && this.employeeList && this.employeeList.length > 0) {\r\n this.selectedRowIndex = this.wd = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.itemClicked = this.employeeList[0];\r\n }\r\n else if (this.itemClicked.recentSearch\r\n && this.widgets && this.widgets.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.ws = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.wd = 0;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.recentSearch\r\n && this.workspaces && this.workspaces.length > 0) {\r\n this.selectedRowIndex = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.recentSearch\r\n && this.items && this.items.length > 0) {\r\n this.ws = this.selectedEmployeeIndex = this.wd = this.t = this.rs = this.users = this.goalIndex = null;\r\n this.selectedRowIndex = 0;\r\n document.getElementById(\"style-1\").scrollTop = 0;\r\n this.itemClicked = this.items[0];\r\n }\r\n }\r\n arrowRightEventForSearchByText() {\r\n if (this.itemClicked.itemType == SearchTaskType.Project && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.projectIndex = this.goalIndex = this.selectedEmployeeIndex = null;\r\n this.users = 0;\r\n document.getElementById(\"style-5\").scrollTop = 0;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Project && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.projectIndex = this.users = this.selectedEmployeeIndex = null;\r\n this.goalIndex = 0;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.itemType == SearchTaskType.Project && this.employeeList && this.employeeList.length > 0) {\r\n this.projectIndex = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.itemClicked = this.employeeList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.projectIndex = this.users = this.selectedEmployeeIndex = null;\r\n this.goalIndex = 0;\r\n document.getElementById(\"style-6\").scrollTop = 0;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc) && this.employeeList && this.employeeList.length > 0) {\r\n this.projectIndex = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n document.getElementById(\"style-4\").scrollTop = 0;\r\n this.itemClicked = this.employeeList[0];\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if ((this.itemClicked.itemType == SearchTaskType.goal || this.itemClicked.itemType == SearchTaskType.sprint) && this.employeeList && this.employeeList.length > 0) {\r\n this.projectIndex = this.users = this.goalIndex = null;\r\n this.selectedEmployeeIndex = 0;\r\n this.itemClicked = this.employeeList[0];\r\n }\r\n }\r\n arrowRightEvent() {\r\n // if (\r\n // this.searchText == undefined ||\r\n // this.searchText == null ||\r\n // this.searchText === \"\"\r\n // ) {\r\n // return;\r\n // } \r\n if (this.searchByText && this.searchText) {\r\n this.arrowRightEventForSearchByText();\r\n }\r\n else if (this.itemClicked.recentSearch) {\r\n return;\r\n }\r\n //From menus\r\n else if (this.itemClicked.menu && this.workspaces && this.workspaces.length > 0) {\r\n this.t = null;\r\n document.getElementById(\"style-2\").scrollTop = 0;\r\n this.wd = this.selectedRowIndex = this.selectedEmployeeIndex = this.rs = this.users = this.goalIndex = null;\r\n this.ws = 0;\r\n this.itemClicked = this.workspaces[0];\r\n } else if (this.itemClicked.menu && this.widgets && this.widgets.length > 0) {\r\n this.wd = 0;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.selectedEmployeeIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.menu && this.employeeList && this.employeeList.length > 0) {\r\n this.selectedEmployeeIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.menu && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.users = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.menu && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.goalIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.users = null;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.menu && this.recentSearches && this.recentSearches.length > 0) {\r\n this.rs = 0;\r\n this.ws = this.wd = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n //From workspaces\r\n else if (this.itemClicked.workspaceId && this.widgets && this.widgets.length > 0) {\r\n this.wd = 0;\r\n document.getElementById(\"style-3\").scrollTop = 0;\r\n this.ws = this.rs = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.widgets[0];\r\n } else if (this.itemClicked.workspaceId && this.employeeList && this.employeeList.length > 0) {\r\n this.selectedEmployeeIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.workspaceId && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.users = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.workspaceId && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.goalIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.users = null;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.workspaceId && this.recentSearches && this.recentSearches.length > 0) {\r\n this.rs = 0;\r\n this.ws = this.wd = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n //From widgets\r\n else if (this.itemClicked.widgetId && this.employeeList && this.employeeList.length > 0) {\r\n this.selectedEmployeeIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.employeeList[0];\r\n } else if (this.itemClicked.widgetId && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.users = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.widgetId && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.goalIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.users = null;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.widgetId && this.recentSearches && this.recentSearches.length > 0) {\r\n this.rs = 0;\r\n this.ws = this.wd = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n //From Employees\r\n else if (this.itemClicked.employeeNumber && this.userStorySearchList && this.userStorySearchList.length > 0) {\r\n this.users = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.goalIndex = null;\r\n this.itemClicked = this.userStorySearchList[0];\r\n } else if (this.itemClicked.employeeNumber && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.goalIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.users = null;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.employeeNumber && this.recentSearches && this.recentSearches.length > 0) {\r\n this.rs = 0;\r\n this.ws = this.wd = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n //From WI/Bug\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.goalSearchList && this.goalSearchList.length > 0) {\r\n this.goalIndex = 0;\r\n this.ws = this.rs = this.selectedRowIndex = this.wd = this.t = this.selectedEmployeeIndex = this.users = null;\r\n this.itemClicked = this.goalSearchList[0];\r\n } else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.workItemORBug || this.itemClicked.itemType == SearchTaskType.adhoc)\r\n && this.recentSearches && this.recentSearches.length > 0) {\r\n this.rs = 0;\r\n this.ws = this.wd = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n //From Goal/Sprint\r\n else if (this.itemClicked.itemType && (this.itemClicked.itemType == SearchTaskType.sprint || this.itemClicked.itemType == SearchTaskType.goal)\r\n && this.recentSearches && this.recentSearches.length > 0) {\r\n this.rs = 0;\r\n this.ws = this.wd = this.selectedEmployeeIndex = this.selectedRowIndex = this.t = this.users = this.goalIndex = null;\r\n this.itemClicked = this.recentSearches[0];\r\n }\r\n }\r\n\r\n openWorkspaceForm() {\r\n this.addWorkSpacePopOver.open();\r\n this.display = true;\r\n this.isOpened.emit(this.display);\r\n this.getAllRoles();\r\n }\r\n\r\n getAllRoles() {\r\n this.commonService.GetallRoles().subscribe((responseData: any) => {\r\n this.rolesDropDown = responseData.data;\r\n this.rolesDropDown.forEach((p) => {\r\n const id = p.roleId.toLowerCase();\r\n p.roleId = id;\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngDestroyed$.next();\r\n this.ngDestroyed$.complete();\r\n }\r\n\r\n compareSelectedRolesFn() { }\r\n compareEditSelectedRolesFn() { }\r\n compareDeleteSelectedRolesFn() { }\r\n upsertWorkspace() { }\r\n toggleAllRolesSelected() { }\r\n toggleEditAllRolesSelected() { }\r\n toggleDeleteAllRolesSelected() { }\r\n closeAddWorkspaceDialog() { }\r\n}\r\n","<button type=\"submit\" class=\"visibles\" mat-icon-button [matMenuTriggerFor]=\"menus\" fxHide.gt-xs fxShow>\r\n <mat-icon class=\"newMenu\">menu</mat-icon>\r\n</button>\r\n<div fxFlex class=\"newLogo default-bg top-logo-bg newminilogo zoom-image-hover\" fxHide.gt-xs fxShow>\r\n <img src=\"{{companyMiniLogo}}\" alt=\"\" id=\"mini-logo-topbar\" style=\"width:30px; height:30px;\"\r\n (click)=\"getAllMenuItems()\" />\r\n</div>\r\n<div fxFlex class=\"newLogo top-logo-bg apps-button zoom-image-hover\" style=\"left: 0px;\" fxHide fxShow.gt-xs>\r\n <img src=\"{{companyMainLogo}}\" style=\"cursor: pointer;left: 20px;left: 20px;position: relative;\" id=\"main-logo-topbar\"\r\n class=\"img-height-main-logo-topbar\" (click)=\"getAllMenuItems()\" />\r\n</div>\r\n\r\n<!-- \r\n<mat-menu #menus=\"matMenu\" class=\"filter-panel\" (click)=\"$event.stopPropagation()\">\r\n <div *ngFor=\"let item of(menuItems$ | async)\">\r\n <div *ngIf=\"item.type === 'dropDown'\">\r\n <button mat-menu-item [matMenuTriggerFor]=\"levelTwoMenu\" (mouseover)=\"openLevel2Menu(item.state,item.sub)\">\r\n <mat-icon>{{ item.icon }}</mat-icon>{{ item.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n <div *ngIf=\"item.type == 'link'\">\r\n <button mat-menu-item routerLink=\"/{{ item.state }}\">\r\n <mat-icon>{{ item.icon }}</mat-icon>{{ item.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n </div>\r\n</mat-menu>\r\n\r\n<mat-menu #levelTwoMenu=\"matMenu\">\r\n <div *ngFor=\"let itemLvl2 of subLevels\">\r\n <div *ngIf=\"itemLvl2.type === 'dropDown'\">\r\n <button mat-menu-item [matMenuTriggerFor]=\"levelThreeMenu\"\r\n (mouseover)=\"openLevel3Menu(stateLvl1,itemLvl2.state,item.sub)\">\r\n {{ itemLvl2.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n <div *ngIf=\"itemLvl2.type == 'applicationlink'\">\r\n <button mat-menu-item routerLink=\"/{{ itemLvl2.state }}\">\r\n {{ itemLvl2.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n <div *ngIf=\"itemLvl2.type == 'link'\">\r\n <button mat-menu-item routerLink=\"/{{stateLvl1}}/{{ itemLvl2.state }}\">\r\n {{ itemLvl2.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n </div>\r\n</mat-menu>\r\n\r\n<mat-menu #levelThreeMenu=\"matMenu\">\r\n <div *ngFor=\"let itemLvl3 of subLevelsForLevel2\">\r\n <button mat-menu-item routerLink=\"/{{ level3Link1 }}/{{ level3Link2 }}/{{itemLvl3.state}}\">\r\n {{ itemLvl3.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n</mat-menu> -->\r\n\r\n<mat-menu #menus=\"matMenu\" yPosition=\"below\" class=\"filter-panel\" (click)=\"$event.stopPropagation()\"\r\n style=\"height:auto\">\r\n <div *ngFor=\"let item of items\">\r\n <div *ngIf=\"item.type == 'link' || item.type == 'applicationlink'\">\r\n <button mat-menu-item routerLink=\"/{{ item.state }}\" (click)=\"selectMenu(item,$event)\"\r\n routerLinkActive=\"item-active\">\r\n <mat-icon>{{ item.icon }}</mat-icon>{{ item.menu | softLabelsPipe : softLabels}}\r\n </button>\r\n </div>\r\n </div>\r\n</mat-menu>\r\n\r\n\r\n<div style=\"position: relative;\r\nleft: 90%\" class=\"store-icom mat-icon-button\" *ngIf=\"canAccess_feature_DragApps\"\r\n [ngClass]=\"this.routes.url.includes('/app-store/widgets') ? 'icon_active_class' : ''\">\r\n <fa-icon icon=\"store\" style=\"font-size: 20px !important;\" matTooltipClass=\"tooltipClass-mat\"\r\n matTooltip=\"{{ 'APP.APPSTORE' | translate}}\" (click)=\"openApps()\"\r\n class=\"mat-color-accent cursor-pointer theme-navbar-icon-color\"></fa-icon>\r\n</div>\r\n\r\n<div class=\"SearchBox dropdown\" style=\"position: absolute !important;\">\r\n <span class=\"mat-color-accent input-group-addon\" *ngIf=\"searchByText\">@ &nbsp;</span>\r\n <span class=\"mat-color-accent input-group-addon\" *ngIf=\"searchById\"># &nbsp;</span>\r\n <input type=\"text\" class=\"SearchBox-input dropbtn\" placeholder=\"{{ 'APP.STARTHEREORCLICKCONTROL+Q' | translate}}\"\r\n [class.hide-placeholder]=\"searchByText || searchById\" autocomplete=\"off\" #element [(ngModel)]=\"searchText\"\r\n (input)=\"SearchItem($event)\" (click)=\"SearchItem($event)\" (focus)=\"onFocus()\" (blur)=\"Set();\"\r\n (keydown.enter)=\"navigate($event, itemClicked)\" (keydown.arrowdown)=\"arrowDownEvent()\"\r\n (keydown.arrowup)=\"arrowUpEvent()\" (keydown.arrowleft)=\"arrowLeftEvent()\" (keydown.arrowright)=\"arrowRightEvent()\">\r\n\r\n <button class=\"SearchBox-button\">\r\n <span class=\"close_icon_search\">\r\n <span *ngIf=\"!searchText\"></span>\r\n <mat-icon *ngIf=\"searchText\" class=\"icon-button mr-05\" aria-hidden=\"false\" (click)=\"closeSearch($event)\"\r\n style=\"cursor:pointer\">\r\n close</mat-icon>\r\n </span>\r\n <mat-icon class=\"SearchBox-icon icon-color mt-lg-n2 mr-05 info-class\" [satPopoverAnchorFor]=\"p\"\r\n #infoPopOver=\"satPopoverAnchor\" color=\"primary\" (click)=\"openInfo(infoPopOver)\">info</mat-icon>\r\n <mat-icon class=\"SearchBox-icon icon-color mt-lg-n2\" color=\"primary\">search</mat-icon>\r\n </button>\r\n <div class=\"dropdown-content\" [ngClass]=\"{'d-block' : display, 'd-none' : !display}\">\r\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"\r\n *ngIf=\"loadingSearchMenuData || recentSearchesfetchInProgress || widgetsfetchInProgress\">\r\n </mat-progress-bar>\r\n <div class=\"row rowselect\">\r\n <div class=\"column columnselect-next pl-05\" *ngIf=\"items && (items.length>0) && !(searchById || searchByText)\">\r\n <div class=\"in-header\">{{ 'SHELL.APPLICATIONS' | translate}}</div>\r\n <div id=\"style-1\" style=\"background-color: white !important; height: 445px !important; overflow: auto;\">\r\n <ng-container *ngIf=\"items && items.length>0\">\r\n <div *ngFor=\"let item of items; let i = index;\"\r\n [style.background-color]=\"selectedRowIndex == i ? themeBaseColor : 'white'\">\r\n <div *ngIf=\"item.type == 'link' || item.type == 'applicationlink'\">\r\n <button mat-menu-item routerLink=\"/{{ item.state }}\"\r\n [ngClass]=\"selectedRowIndex == i ? 'color-text' : 'color-text1'\"\r\n (mousedown)=\"selectAdimnTool(item.state, $event, item)\" routerLinkActive=\"item-active\"\r\n [routerLinkActiveOptions]=\"{exact:\r\n true}\" matTooltipClass=\"tooltipClass-mat\"\r\n matTooltip=\"{{ translateapplicationname(item.menu | softLabelsPipe : softLabels)}}\">\r\n <mat-icon class=\"icon-color\" [ngClass]=\"selectedRowIndex == i ? 'color-text' : 'color-text1'\">\r\n {{ item.icon }}</mat-icon><span\r\n [innerHTML]=\"translateapplicationname(item.menu) | softLabelsPipe : softLabels | highLightText : searchText\"></span>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column pl-05\" *ngIf=\"!(searchById || searchByText)\">\r\n\r\n <div class=\"columnselect-next ml-0\" *ngIf=\"workspaces && (workspaces.length>0)\">\r\n <div class=\"in-header\">{{ 'SHELL.DASHBOARDS' | translate}}\r\n <fa-icon icon=\"plus-square\"\r\n *ngIf=\"canAccess_feature_AddDashboard\" matTooltip=\"{{ 'APP.ADDDASHBOARD' | translate}}\"\r\n (click)=\"initializeWorkspaceForm();openWorkspaceForm();\" class=\"mat-color-accent cursor-pointer\"\r\n [satPopoverAnchorFor]=\"addWorkspace\">\r\n </fa-icon> \r\n </div>\r\n <div id=\"style-2\" style=\"background-color: white !important; height: 445px !important; overflow: auto;\">\r\n <ng-container *ngIf=\"workspaces && workspaces.length>0\">\r\n <div *ngFor=\"let wc of workspaces; let i = index\"\r\n [style.background-color]=\"ws == i ? themeBaseColor : 'white'\" class=\"scroll\" #workspaceElement>\r\n <button mat-menu-item (mousedown)=\"selectMenu(wc,$event)\"\r\n [ngClass]=\"ws == i ? 'color-text' : 'color-text1'\" (click)=\"navigateToUrl(wc.workspaceId)\"\r\n routerLink=\"/dashboard-management/dashboard/{{ wc.workspaceId }}\" routerLinkActive=\"item-active\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{wc.workspaceName}}\">\r\n <span [innerHTML]=\"wc.workspaceName | highLightText : searchText \"></span>\r\n </button>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column columnselect-apps ml-0\" *ngIf=\"widgets && widgets.length>0 && !(searchById || searchByText)\">\r\n <div class=\"in-header\">{{ 'SHELL.FAVOURITEAPPS' | translate}}</div>\r\n <div style=\"background-color: white !important; height: 445px !important; overflow: auto;\" id=\"style-3\">\r\n <div *ngFor=\"let widget of widgets; let i = index\"\r\n [style.background-color]=\"wd == i ? themeBaseColor : 'white'\">\r\n <button mat-menu-item routerLinkActive=\"item-active\" [routerLinkActiveOptions]=\"{exact:\r\n true}\" routerLink=\"/dashboard-management/widgets/{{ widget.widgetId }}\"\r\n [ngClass]=\"wd == i ? 'color-text' : 'color-text1'\" (mousedown)=\"OnSelect(widget,$event)\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{widget.widgetName | softLabelsPipe : softLabels}}\">\r\n <span [innerHTML]=\"widget.widgetName | softLabelsPipe : softLabels | highLightText : searchText\"></span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"columnselect-next ml-0\" *ngIf=\"projectList && projectList.length>0 && searchText && searchByText\">\r\n <div class=\"in-header\">Projects</div>\r\n <div class=\"scroll\" id=\"style-7\"\r\n style=\"background-color: white !important; height: 445px !important; overflow: auto;\">\r\n <div *ngFor=\"let project of projectList; let i = index\"\r\n [style.background-color]=\"projectIndex == i ? themeBaseColor : 'white'\">\r\n <button mat-menu-item routerLinkActive=\"item-active\" [routerLinkActiveOptions]=\"{exact:\r\n true}\" [ngClass]=\"projectIndex == i ? 'color-text' : 'color-text1'\"\r\n (mousedown)=\"onProjectSelect(project,$event)\" matTooltipClass=\"tooltipClass-mat\"\r\n matTooltip=\"{{project.itemName | softLabelsPipe : softLabels}}\">\r\n <span [innerHTML]=\"project.itemName | softLabelsPipe : softLabels | highLightText : searchText\"></span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"columnselect-next ml-0\"\r\n *ngIf=\"userStorySearchList && userStorySearchList.length>0 && searchText && searchByText\">\r\n <div class=\"in-header\" *ngIf=\"isEnableBugBoard\">{{ 'SHELL.WIBUG' | translate}}</div>\r\n <div class=\"in-header\" *ngIf=\"!isEnableBugBoard\">{{ 'SHELL.WI'| translate}}</div>\r\n <div class=\"scroll\" id=\"style-5\"\r\n style=\"background-color: white !important; height: 445px !important; overflow: auto;\">\r\n <div *ngFor=\"let userStory of userStorySearchList; let i = index\"\r\n [style.background-color]=\"users == i ? themeBaseColor : 'white'\">\r\n <button mat-menu-item routerLinkActive=\"item-active\" [routerLinkActiveOptions]=\"{exact:\r\n true}\" [ngClass]=\"users == i ? 'color-text' : 'color-text1'\" (mousedown)=\"OnUserStorySelect(userStory,$event)\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{userStory.itemName | softLabelsPipe : softLabels}}\">\r\n <span [innerHTML]=\"userStory.itemName | softLabelsPipe : softLabels | highLightText : searchText\"></span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"columnselect-next ml-0\"\r\n *ngIf=\"goalSearchList && goalSearchList.length>0 && searchText && searchByText\">\r\n <div class=\"in-header\">{{ 'SHELL.GOALSPRINT' | translate }}</div>\r\n <div class=\"scroll\" id=\"style-6\"\r\n style=\"background-color: white !important; height: 445px !important; overflow: auto;\">\r\n <div *ngFor=\"let goal of goalSearchList; let i = index\"\r\n [style.background-color]=\"goalIndex == i ? themeBaseColor : 'white'\">\r\n <button mat-menu-item routerLinkActive=\"item-active\" [routerLinkActiveOptions]=\"{exact:\r\n true}\" [ngClass]=\"goalIndex == i ? 'color-text' : 'color-text1'\" (mousedown)=\"OnGoalSelect(goal,$event)\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{goal.itemName | softLabelsPipe : softLabels}}\">\r\n <span [innerHTML]=\"goal.itemName | softLabelsPipe : softLabels | highLightText : searchText\"></span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column columnselect-apps ml-0\"\r\n *ngIf=\"(employeeList && employeeList.length > 0) && searchText && searchByText\">\r\n <div class=\"in-header\">Employees</div>\r\n <div id=\"style-4\" style=\"background-color: white !important; height: 445px !important; overflow: auto;\">\r\n <div *ngFor=\"let employee of employeeList; let i = index\" style=\"background-color: white;\"\r\n [style.background-color]=\"selectedEmployeeIndex == i ? themeBaseColor : 'white'\" #workspaceElement>\r\n <button mat-menu-item (mousedown)=\"selectEmployee(employee,$event)\"\r\n [ngClass]=\"selectedEmployeeIndex == i ? 'color-text' : 'color-text1'\"\r\n routerLink=\"/dashboard/profile/{{ employee.itemId }}/overview\" routerLinkActive=\"item-active\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{employee.itemName}}\">\r\n <div fxLayout=\"row\">\r\n <app-avatar [name]=\"employee.itemName | removeSpecialCharacters\" fxLayoutAlign=\"start center\"\r\n matTooltip=\"{{ employee.itemName }}\" [src]=\"employee.profileImage | fetchSizedAndCachedImage: '20':''\"\r\n [isRound]=\"true\" size=\"20\" (click)=\"profilePage(employee.userId);$event.stopPropagation();\">\r\n </app-avatar> \r\n <div class=\"ml-05\">\r\n <span [innerHTML]=\"employee.itemName | highLightText : searchText\"></span>\r\n \r\n </div>\r\n </div>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column columnselect-apps ml-0\"\r\n *ngIf=\"recentSearches && (recentSearches.length>0) && !(searchById || searchByText)\">\r\n <div class=\"in-header\">{{ 'SHELL.RECENTSEARCHS' | translate}}</div>\r\n <div style=\"background-color: white !important; height: 445px !important\">\r\n <div *ngFor=\"let search of recentSearches | slice:0:9 let i = index\"\r\n [style.background-color]=\"rs == i ? themeBaseColor : 'white'\">\r\n <button mat-menu-item [ngClass]=\"rs == i ? 'color-text' : 'color-text1'\"\r\n (mousedown)=\"searchText=search.recentSearch;SearchRecentItem(search,$event)\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{search.recentSearch | softLabelsPipe : softLabels}} \r\n ({{ convertToLocalTime(search.createdDateTime) | timeago }})\">\r\n <span [innerHTML]=\"search.recentSearch | softLabelsPipe : softLabels | highLightText : searchText\"></span>\r\n ({{ convertToLocalTime(search.createdDateTime) | timeago }})\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <!-- <div class=\"text-center in-header \" *ngIf=\"!searchText && searchById\">\r\n Please enter unique id and click enter for navigating to corresping page\r\n </div>\r\n \r\n <div class=\"text-center in-header \" *ngIf=\"!searchText && searchByText\" >\r\n Please enter text to retreive data by filtering\r\n </div> -->\r\n \r\n\r\n <sat-popover backdropClass=\"backdrop-color\" hasBackdrop #addWorkspace verticalAlign=\"below\" horizontalAlign=\"end\"\r\n [interactiveClose]=\"false\">\r\n <mat-card class=\"filter-data p-0\">\r\n <mat-card-title class=\"text-center\">\r\n <div class=\"card-title-text mat-bg-primary p-05 mb-1\">\r\n {{ 'APP.ADDDASHBOARDTITLE' | translate }}\r\n </div>\r\n </mat-card-title>\r\n <mat-card-content>\r\n <form [formGroup]=\"workspaceForm\" novalidate (submit)=\"workspaceForm.valid && upsertWorkspace()\">\r\n <div class=\"card-content\">\r\n <mat-form-field class=\"full-width\">\r\n <input matInput placeholder=\"{{ 'HRMANAGAMENT.NAME' | translate}}*\" formControlName=\"workspaceName\" />\r\n <mat-error\r\n *ngIf=\"workspaceForm.get('workspaceName').hasError('required') && workspaceForm.get('workspaceName').touched \">\r\n {{ 'APP.DASHBOARDNAMEREQUIRED' | translate }}\r\n </mat-error>\r\n <mat-error *ngIf=\"workspaceForm.get('workspaceName').hasError('maxlength')\">\r\n {{ 'APP.DASHBOARDNAMELENGTHEXCEED' | translate }}\r\n </mat-error>\r\n </mat-form-field>\r\n <mat-form-field class=\"full-width\">\r\n <textarea matInput formControlName=\"description\" rows=\"2\"\r\n placeholder=\"{{ 'COMPANYSETTINGS.DESCRIPTION' | translate }}\"></textarea>\r\n <mat-error\r\n *ngIf=\"workspaceForm.get('description').hasError('maxlength') && workspaceForm.get('description').touched\">\r\n {{ 'APP.CUSTOMAPPDESCRIPTIONMAXLENGTHERROR' | translate }}\r\n </mat-error>\r\n </mat-form-field>\r\n <mat-form-field class=\"full-width\" (click)=\"$event.stopPropagation();\">\r\n <mat-select formControlName=\"selectedRoles\" [compareWith]=\"compareSelectedRolesFn\"\r\n placeholder=\"{{ 'WIDGETS.VIEWROLES' | translate }}\" multiple required>\r\n <mat-option #allSelected (click)=\"toggleAllRolesSelected()\" [value]=\"0\">\r\n {{ 'PERMISSIONMANAGEMENT.SELECTALL' | translate }}</mat-option>\r\n <mat-option [value]=\"roles.roleId\" *ngFor=\"let roles of rolesDropDown\" #allSelected\r\n (click)=\"toggleRolesPerOne(allSelected.value)\">\r\n {{ roles.roleName }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"workspaceForm.get('selectedRoles').hasError('required') && workspaceForm.get('selectedRoles').touched\">\r\n {{ 'APP.SELECTANYROLE' | translate }}\r\n </mat-error>\r\n </mat-form-field>\r\n <mat-form-field class=\"full-width\">\r\n <mat-select formControlName=\"editRoleIds\" [compareWith]=\"compareEditSelectedRolesFn\"\r\n placeholder=\"{{ 'WIDGETS.EDITROLES' | translate }}\" multiple>\r\n <mat-option #allEditSelected (click)=\"toggleEditAllRolesSelected()\" [value]=\"0\">\r\n {{ 'PERMISSIONMANAGEMENT.SELECTALL' | translate }}</mat-option>\r\n <mat-option [value]=\"role.roleId\" *ngFor=\"let role of rolesDropDown\" #allEditSelected\r\n (click)=\"toggleEditRolesPerOne()\">\r\n {{ role.roleName }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field class=\"full-width\">\r\n <mat-select formControlName=\"deleteRoleIds\" [compareWith]=\"compareDeleteSelectedRolesFn\"\r\n placeholder=\"{{ 'WIDGETS.DELETEROLES' | translate }}\" multiple>\r\n <mat-option #allDeleteSelected (click)=\"toggleDeleteAllRolesSelected()\" [value]=\"0\">\r\n {{ 'PERMISSIONMANAGEMENT.SELECTALL' | translate }}</mat-option>\r\n <mat-option [value]=\"role.roleId\" *ngFor=\"let role of rolesDropDown\" #allDeleteSelected\r\n (click)=\"toggleDeleteRolesPerOne()\">\r\n {{ role.roleName }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"text-center\">\r\n <button class=\"mr-1\" mat-button mat-raised-button color=\"primary\" type=\"button\" (click)=\"upsertWorkspace()\"\r\n [disabled]=\"!workspaceForm.valid\">\r\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\" *ngIf=\"dashboardUpdateInProgress\">\r\n </mat-progress-bar>\r\n <fa-icon class=\"mr-05\" icon=\"plus\"></fa-icon> {{ 'SAVE' | translate }}\r\n </button>\r\n <button mat-button mat-raised-button type=\"button\" (click)=\"closeAddWorkspaceDialog()\">\r\n <fa-icon class=\"mr-05\" icon=\"times\"></fa-icon> {{ 'CANCEL' | translate }}\r\n </button>\r\n </div>\r\n </form>\r\n </mat-card-content>\r\n </mat-card>\r\n </sat-popover>\r\n\r\n\r\n <sat-popover #p hasBackdrop [interactiveClose]=\"true\" verticalAlign=\"above\">\r\n <div class=\"tooltip-wrapper\">\r\n <table>\r\n <tr>\r\n <td>Ctrl + Q: </td>\r\n <td>&nbsp;</td>\r\n <td> {{ 'SHELL.TOOPENSEARCHMENU' | translate}}</td>\r\n </tr>\r\n <tr>\r\n <td>Ctrl + B: </td>\r\n <td>&nbsp;</td>\r\n <td> {{ 'SHELL.TOOPENGOALSANDUSERS' | translate}}</td>\r\n </tr>\r\n <tr>\r\n <td>Ctrl + Y: </td>\r\n <td>&nbsp;</td>\r\n <td> {{ 'SHELL.TOSEARCHBYID' | translate}}</td>\r\n </tr>\r\n <tr>\r\n <td>Ctrl + M: </td>\r\n <td>&nbsp;</td>\r\n <td> {{ 'SHELL.TOCLOSEMENU' | translate}}</td>\r\n </tr>\r\n </table>\r\n </div>\r\n </sat-popover>\r\n\r\n <mat-spinner *ngIf=\"searchByTextLoading && display\" class=\"spinner-class\" [diameter]=\"100\"></mat-spinner>","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit } from \"@angular/core\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { NavigationEnd, Router } from \"@angular/router\";\r\nimport { Actions, ofType } from \"@ngrx/effects\";\r\nimport { select, Store } from \"@ngrx/store\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { PubNubAngular } from \"pubnub-angular2\";\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { takeUntil, tap } from \"rxjs/operators\";\r\nimport { AuthenticationActionTypes, RolesFetchTriggered } from \"../../store/actions/authentication.actions\";\r\nimport { ClearAllNotifications, NewNotificationReceived, NotificationsActionTypes, UpsertUnreadNotificationsTriggered } from \"../../store/actions/notifications.actions\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport * as sharedModuleReducers from \"../../store/reducers/index\";\r\nimport { NotificationTypeIds } from '../../constants/notification-type-ids';\r\nimport { NotificationModel, NotificationOutputModel, UserNotificationReadModel } from '../../models/NotificationsOutPutModel';\r\nimport { SoftLabelConfigurationModel } from '../../models/softlabels-model';\r\nimport { UserModel } from '../../models/user';\r\nimport { OrderByPipe } from '../../../globaldependencies/pipes/orderby-pipe';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { ChannelNames } from '../../constants/channel-names';\r\nimport { ChannelRoutes } from '../../constants/notification-routes';\r\nimport { UserStoryAssignedNotification } from '../../models/UserStoryAssignedNotification';\r\nimport { RoleUpdatedNotification } from '../../models/RoleUpdatedNotification';\r\nimport { ReportSubmittedNotification } from '../../models/ReportSubmittedNotification';\r\nimport { ReportConfigAssignedNotification } from '../../models/ReportConfigAssignedNotification';\r\nimport { MultipleChartsScheduling } from '../../models/multiChartsScheduling';\r\nimport { AssetAssignedNotification } from '../../models/AssetAssignedNotificationModel';\r\nimport { NewProjectCreatedNotificationModel } from '../../models/NewProjectCreatedNotificationModel';\r\nimport { GoalApprovedNotificationModel } from '../../models/goalApprovedNotificationModel';\r\nimport { UserStoryUpdateNotificationModel } from '../../models/userStoryUpdateNotificationModel';\r\nimport { UserStoryCommentNotificationModel } from '../../models/userStoryCommentNotificationModel';\r\nimport { SprintStartedNotificationModel } from '../../models/sprintStartedNotificationModel';\r\nimport { SprintReplanStartedNotificationModel } from '../../models/sprintReplanRequestedModel';\r\nimport { AnnoucementDialogComponent } from './announcement-dialog.component';\r\nimport { Guid } from 'guid-typescript';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport * as _ from \"underscore\";\r\nimport { SignalrService } from \"../../services/signalr.service\";\r\n\r\n@Component({\r\n selector: \"app-notifications\",\r\n templateUrl: \"./notifications.component.html\"\r\n})\r\n\r\nexport class NotificationsComponent implements OnInit {\r\n\r\n @Input() notificPanel;\r\n\r\n public ngDestroyed$ = new Subject();\r\n constNotification_WorkItemAssignedToUser = NotificationTypeIds.Notification_WorkItemAssignedToUser;\r\n notifications$: Observable<NotificationOutputModel[]>;\r\n notifications: NotificationOutputModel[];\r\n softLabels: SoftLabelConfigurationModel[];\r\n loadingNotifications$: Observable<boolean>;\r\n selectedNotification: UserNotificationReadModel;\r\n announcementId: string;\r\n announceNotificationId: string;\r\n notificationColor = false;\r\n authenticatedUserRecord$: Observable<UserModel>;\r\n newNotifications: NotificationModel[] = [];\r\n\r\n constructor(\r\n private router: Router, private pubnub: PubNubAngular, private store: Store<State>,\r\n private actionUpdates$: Actions, private cookieService: CookieService, private toastr: ToastrService,\r\n public dialog: MatDialog, private orderByPipe: OrderByPipe, private signalr: SignalrService,\r\n private cdRef: ChangeDetectorRef,) {\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(AuthenticationActionTypes.UserDetailsFetchedAfterLogin),\r\n tap(() => {\r\n if (this.cookieService.check(LocalStorageProperties.CurrentUserId)) {\r\n\r\n const CurrentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n // Subscribe to Task Assignment Notificaitons here.\r\n const taskAssignmentChannelToSubscribeInto = ChannelNames.Channel_TaskAssignments + CurrentUserId;\r\n const tastatusReportSubmissionChannelToSubscribeInto = ChannelNames.Channel_StatusReportSubmission + CurrentUserId;\r\n const tastatusConfigAssignChannelToSubscribeInto = ChannelNames.Channel_StatusConfigAssign + CurrentUserId;\r\n const multiChartsSchedulingChannelToSubscribeInto = ChannelNames.Channel_MultiChartsScheduling + CurrentUserId;\r\n const assetsAssignedChannelToSubscribeInto = ChannelNames.Channel_AssetAssignment + CurrentUserId;\r\n const projectCreatedChannelToSubscribeInto = ChannelNames.Channel_NewProject + CurrentUserId;\r\n const projectAccessToMemberChannelToSubscribeInto = ChannelNames.Channel_ProjectMemberRole + CurrentUserId;\r\n const goalApprovedChannelToSubscribeInto = ChannelNames.Channel_GoalApprovedFromReplan + CurrentUserId;\r\n const userStoryUpdateChannelToSubscribeInto = ChannelNames.Channel_UserStoryUpdateNotification + CurrentUserId;\r\n const AnnouncementChannelToSubscribeInto = ChannelNames.Channel_AnnouncementNotification + CurrentUserId;\r\n const ReminderChannelToSubscribeInto = ChannelNames.Channel_ReminderNotification + CurrentUserId;\r\n const PerformanceChannelToSubscribeInto = ChannelNames.Channel_PeroformanceNotification + CurrentUserId;\r\n const userStoryCommentChannelToSubscribeInto = ChannelNames.Channel_UserStoryComment + CurrentUserId;\r\n const sprintStartedChannelToSubscribeInto = ChannelNames.Channel_SprintStarted + CurrentUserId;\r\n const sprintReplanChannelToSubscribeInto = ChannelNames.Channel_SprintRequestedToReplan + CurrentUserId;\r\n const leaveAppliedChannelToSubscribeInto = ChannelNames.Channel_LeaveApplied + CurrentUserId;\r\n const ApproveLeaveChannelToSubscribeInto = ChannelNames.Channel_ApproveLeave + CurrentUserId;\r\n const RejectLeaveChannelToSubscribeInto = ChannelNames.Channel_RejectLeave + CurrentUserId;\r\n const ResignationChannelToSubscribeInto = ChannelNames.Channel_Resignation + CurrentUserId;\r\n const ApproveResignationChannelToSubscribeInto = ChannelNames.Channel_ApproveResignation + CurrentUserId;\r\n const RejectResignationChannelToSubscribeInto = ChannelNames.Channel_RejectResignation + CurrentUserId;\r\n const AutoTImesheetSubmissionChannelToSubscribeInto = ChannelNames.Channel_AutoTimesheetSubmission + CurrentUserId;\r\n const ProbationAssignNotification = ChannelNames.Channel_ProbationAssignNotification + CurrentUserId;\r\n const ReviewAssignToEmployeeNotification = ChannelNames.Channel_ReviewAssignToEmployeeNotification + CurrentUserId;\r\n const ReviewSubmittedByEmployeeNotification = ChannelNames.Channel_ReviewSubmittedByEmployeeNotification + CurrentUserId;\r\n const ReviewInvitationNotificationModel = ChannelNames.Channel_ReviewInvitationNotificationModel + CurrentUserId;\r\n const PerformanceReviewSubmittedByEmployeeNotification = ChannelNames.Channel_PerformanceReviewSubmittedByEmployeeNotification + CurrentUserId;\r\n const PerformanceReviewInvitationNotificationModel = ChannelNames.Channel_PerformanceReviewInvitationNotificationModel + CurrentUserId;\r\n const PerformanceReviewAssignToEmployeeNotification = ChannelNames.Channel_PerformanceReviewAssignToEmployeeNotification + CurrentUserId;\r\n console.log(\"subscribing to \" + taskAssignmentChannelToSubscribeInto);\r\n console.log(\"subscribing to \" + tastatusReportSubmissionChannelToSubscribeInto);\r\n console.log(\"subscribing to \" + tastatusConfigAssignChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + assetsAssignedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectCreatedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectAccessToMemberChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + goalApprovedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryUpdateChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + AnnouncementChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryCommentChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + sprintStartedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + sprintReplanChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + ReminderChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + PerformanceChannelToSubscribeInto);\r\n this.pubnub.subscribe({\r\n channels: [taskAssignmentChannelToSubscribeInto, tastatusReportSubmissionChannelToSubscribeInto,\r\n ProbationAssignNotification, ReviewAssignToEmployeeNotification, ReviewSubmittedByEmployeeNotification,\r\n ReviewInvitationNotificationModel, PerformanceReviewSubmittedByEmployeeNotification, PerformanceReviewAssignToEmployeeNotification,\r\n tastatusConfigAssignChannelToSubscribeInto, multiChartsSchedulingChannelToSubscribeInto, PerformanceReviewInvitationNotificationModel,\r\n assetsAssignedChannelToSubscribeInto, projectCreatedChannelToSubscribeInto, ,\r\n projectAccessToMemberChannelToSubscribeInto, goalApprovedChannelToSubscribeInto,\r\n userStoryUpdateChannelToSubscribeInto, AnnouncementChannelToSubscribeInto, ReminderChannelToSubscribeInto, RejectResignationChannelToSubscribeInto,\r\n userStoryCommentChannelToSubscribeInto, sprintStartedChannelToSubscribeInto, ResignationChannelToSubscribeInto, ApproveResignationChannelToSubscribeInto,\r\n sprintReplanChannelToSubscribeInto, leaveAppliedChannelToSubscribeInto, ApproveLeaveChannelToSubscribeInto, RejectLeaveChannelToSubscribeInto,\r\n PerformanceChannelToSubscribeInto, AutoTImesheetSubmissionChannelToSubscribeInto]\r\n });\r\n // Add other subscriptions here.\r\n } else {\r\n console.log(\"User not logged in yet to be able to subscribe.\");\r\n }\r\n })\r\n )\r\n .subscribe();\r\n\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(AuthenticationActionTypes.UserDetailsFetchedAfterLogin),\r\n tap(() => {\r\n var roleUpdatesChannelToSubscribeInto = ChannelNames.Channel_RoleUpdates + \"19B6F9FC-7370-4B9C-A05C-3B8D819EEEAF\";\r\n console.log(\"subscribing to \" + roleUpdatesChannelToSubscribeInto);\r\n this.pubnub.subscribe({\r\n channels: [roleUpdatesChannelToSubscribeInto]\r\n });\r\n })\r\n )\r\n .subscribe();\r\n\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(NotificationsActionTypes.ClearAllUnreadNotificationsCompleted),\r\n tap(() => {\r\n this.notifications$ = this.store.pipe(select(sharedModuleReducers.getNotificationAll));\r\n this.notifications$.subscribe(x => {\r\n this.notifications = x;\r\n });\r\n\r\n })\r\n )\r\n .subscribe();\r\n\r\n // const storeListner = (message) => {\r\n // console.log(\"---------Received pubnub message---------\");\r\n // // this.toastr.info(message.message.Summary);\r\n // try {\r\n // // Receiving the User Story Assigned Notification\r\n // if (message.message.NotificationTypeGuid == NotificationTypeIds.Notification_WorkItemAssignedToUser) {\r\n // var userStoryAssignedNotification = new UserStoryAssignedNotification();\r\n // userStoryAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // userStoryAssignedNotification.route = ChannelRoutes.ViewWorkItem + userStoryAssignedNotification.notificationId;\r\n // this.store.dispatch(new NewNotificationReceived(userStoryAssignedNotification));\r\n // } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Notification_RoleUpdated) {\r\n // var roleUpdatedNotification = new RoleUpdatedNotification();\r\n // roleUpdatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // roleUpdatedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(roleUpdatedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Status_Report_Sumitted) {\r\n // var reportSubmittedNotification = new ReportSubmittedNotification();\r\n // reportSubmittedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // reportSubmittedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(reportSubmittedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Status_Report_Config_Created) {\r\n // var reportConfigAssignedNotification = new ReportConfigAssignedNotification();\r\n // reportConfigAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // reportConfigAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(reportConfigAssignedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Multiple_Charts_Scheduling_created) {\r\n // var multipleChartsScheduling = new MultipleChartsScheduling();\r\n // multipleChartsScheduling.loadFromCaseInsensitiveObject(message.message);\r\n // multipleChartsScheduling.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(multipleChartsScheduling));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Assets_Assignment) {\r\n // const assetAssignedNotification = new AssetAssignedNotification();\r\n // assetAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // assetAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(assetAssignedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Reminder_Notification.toString().toLowerCase()) {\r\n // const assetAssignedNotification = new AssetAssignedNotification();\r\n // assetAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // assetAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(assetAssignedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Announcement_Received.toString().toLowerCase()) {\r\n // const assetAssignedNotification = new AssetAssignedNotification();\r\n // assetAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // assetAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(assetAssignedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // if (message.message.Id != this.announceNotificationId) {\r\n // this.announceNotificationId = message.message.Id;\r\n // this.openAnnouncementDialog(message.message);\r\n // }\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Performance_Received.toString().toLowerCase() || message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ProjectMemberRoleAddedNotificationId.toString().toLowerCase()) {\r\n // const newProjectCreatedNotification = new NewProjectCreatedNotificationModel();\r\n // newProjectCreatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // newProjectCreatedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(newProjectCreatedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.NewProjectCreatedNotificationId.toString().toLowerCase() || message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ProjectMemberRoleAddedNotificationId.toString().toLowerCase()) {\r\n // const newProjectCreatedNotification = new NewProjectCreatedNotificationModel();\r\n // newProjectCreatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // newProjectCreatedNotification.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(newProjectCreatedNotification));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.GoalApprovedFromReplan.toString().toLowerCase()) {\r\n // const goalApprovedNotificationModel = new GoalApprovedNotificationModel();\r\n // goalApprovedNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n // goalApprovedNotificationModel.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(goalApprovedNotificationModel));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.USerStoryUpdateNotificationId.toString().toLowerCase()) {\r\n // const userStoryUpdateNotificationModel = new UserStoryUpdateNotificationModel();\r\n // userStoryUpdateNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n // userStoryUpdateNotificationModel.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(userStoryUpdateNotificationModel));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.PushNotificationForUserStoryComment.toString().toLowerCase()) {\r\n // const userStoryCommentNotificationModel = new UserStoryCommentNotificationModel();\r\n // userStoryCommentNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n // userStoryCommentNotificationModel.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(userStoryCommentNotificationModel));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.SprintStarted.toString().toLowerCase()) {\r\n // const sprintStartedNotificationModel = new SprintStartedNotificationModel();\r\n // sprintStartedNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n // sprintStartedNotificationModel.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(sprintStartedNotificationModel));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.SprintRequestdForREplan.toString().toLowerCase()) {\r\n // const sprintReplanStartedNotificationModel = new SprintReplanStartedNotificationModel();\r\n // sprintReplanStartedNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n // sprintReplanStartedNotificationModel.route = ChannelRoutes.ViewAccount;\r\n // this.store.dispatch(new NewNotificationReceived(sprintReplanStartedNotificationModel));\r\n // this.store.dispatch(new RolesFetchTriggered());\r\n // } else {\r\n // // TODO: Send these errors onto server for further processing\r\n // console.log(\"Found undetected notification type. \" + message.message.NotificationTypeGuid);\r\n // }\r\n // // Add other notifications here.\r\n\r\n // } catch (exception) {\r\n // // TODO: Send these exceptions onto server for further processing\r\n // console.log(\"Exception Occured\" + exception.message);\r\n // }\r\n // };\r\n\r\n // this.pubnub.addListener({\r\n // status: st => {\r\n // if (st.category === \"PNUnknownCategory\") {\r\n // var newState = {\r\n // new: \"error\"\r\n // };\r\n // this.pubnub.setState(\r\n // {\r\n // state: newState\r\n // }\r\n // // function (status) {\r\n // // console.log(st.errorData.message);\r\n // // }\r\n // );\r\n // }\r\n // },\r\n // message: message => {\r\n // console.log(\"subscribed to \" + message);\r\n // storeListner(message);\r\n // }\r\n // });\r\n }\r\n\r\n ngOnInit() {\r\n this.router.events\r\n .pipe(takeUntil(this.ngDestroyed$))\r\n .subscribe((routeChange) => {\r\n if (routeChange instanceof NavigationEnd) {\r\n if (this.notificPanel) {\r\n this.notificPanel.close();\r\n }\r\n }\r\n });\r\n this.signalr.notifications$.subscribe((data: any) => {\r\n this.newNotifications = data && data.length > 0 ? data : [];\r\n this.cdRef.detectChanges();\r\n });\r\n this.getSoftLabelConfigurations();\r\n\r\n this.notifications$ = this.store.pipe(select(sharedModuleReducers.getNotificationAll),\r\n tap(x => console.log(x))\r\n );\r\n\r\n this.authenticatedUserRecord$ = this.store.pipe(\r\n select(sharedModuleReducers.getAuthenticatedUserModel)\r\n );\r\n\r\n this.loadingNotifications$ = this.store.pipe(select(sharedModuleReducers.getNotificationsLoading));\r\n }\r\n\r\n getSoftLabelConfigurations() {\r\n this.softLabels = JSON.parse(localStorage.getItem('SoftLabels'));\r\n }\r\n\r\n clearAll(e) {\r\n const notifications = [];\r\n this.notifications.forEach((element) => {\r\n notifications.push(element);\r\n });\r\n this.store.dispatch(new ClearAllNotifications(notifications));\r\n e.preventDefault();\r\n this.notificationColor = !this.notificationColor;\r\n }\r\n\r\n // openAnnouncementDialog(announced) {\r\n // this.dialog.closeAll();\r\n // const dialogRef = this.dialog.open(AnnoucementDialogComponent, {\r\n // minWidth: \"60vw\",\r\n // maxWidth: \"60vw\",\r\n // minHeight: \"50vh\",\r\n // maxHeight: \"80vh\",\r\n // disableClose: true,\r\n // data: {\r\n // announcementId: announced.AnnouncementId,\r\n // announcement: announced.Announcement,\r\n // announcedBy: announced.AnnouncedBy,\r\n // announcedById: announced.AnnouncedById,\r\n // announcedByUserImage: announced.AnnouncedByUserImage,\r\n // announcedOn: announced.AnnouncedOn\r\n // }\r\n // });\r\n // dialogRef.componentInstance.closeMatDialog.subscribe((result) => {\r\n // const index = this.notifications.findIndex((p) => p.notificationId.toString().toLowerCase() == this.announceNotificationId.toString().toLowerCase());\r\n // if (index > -1) {\r\n // this.upsertReadNotification(this.notifications[index]);\r\n // }\r\n // });\r\n // }\r\n\r\n upsertReadNotification(selectedNotification) {\r\n const notifications = [];\r\n var roles = JSON.parse(localStorage.getItem(LocalStorageProperties.RoleFeatures));\r\n let Feature_ApproveOrRejectLeave = '2C22916F-B80B-4C51-9534-23F698DE120B';\r\n let canAccess_feature_ApproveOrRejectLeave = _.find(roles, function (role) { return role['featureId'].toLowerCase() == Feature_ApproveOrRejectLeave.toString().toLowerCase(); }) != null;\r\n const CurrentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n notifications.push(selectedNotification);\r\n const notiifcationmodel = JSON.parse(selectedNotification.notificationJson);\r\n if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.NewProjectCreatedNotificationId.toString().toLowerCase() ||\r\n selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ProjectMemberRoleAddedNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/projectstatus/\" + notiifcationmodel.ProjectGuid + \"/active-goals\"]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.GoalApprovedFromReplan.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/goal/\" + notiifcationmodel.GoalGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.Notification_WorkItemAssignedToUser.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/workitem/\" + notiifcationmodel.UserStoryGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.USerStoryUpdateNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/workitem/\" + notiifcationmodel.UserStoryId]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.SprintStarted.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/sprint/\" + notiifcationmodel.SprintGuid]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.PushNotificationForUserStoryComment.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/workitem/\" + notiifcationmodel.UserStoryGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.GoalRequestdForREplan.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/goal/\" + notiifcationmodel.GoalGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.SprintRequestdForREplan.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/sprint/\" + notiifcationmodel.SprintGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.Notification_AdhocWorkItemAssignedToUser.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/adhoc-workitem/\" + notiifcationmodel.UserStoryGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.AdhocUSerStoryUpdateNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/adhoc-workitem/\" + notiifcationmodel.UserStoryId]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.LeaveApplication.toString().toLowerCase() && canAccess_feature_ApproveOrRejectLeave) {\r\n this.router.navigate([\"hrmanagment/leaves\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ApproveLeaveApplication.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + CurrentUserId + \"/leaves-permissions\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.RejectLeaveApplication.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + CurrentUserId + \"/leaves-permissions\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.AutoTimeSheetSubmissionNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + CurrentUserId + \"/timesheetApproval\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ProbationAssignNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + notiifcationmodel.UserId + \"/probation\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ReviewAssignToEmployeeNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + CurrentUserId + \"/probation\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ReviewSubmittedByEmployeeNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + notiifcationmodel.UserId + \"/probation\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ReviewInvitationNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + notiifcationmodel.UserId + \"/probation\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.PerformanceReviewSubmittedByEmployeeNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + notiifcationmodel.UserId + \"/performance\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.PerformanceReviewInvitationNotificationModel.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + notiifcationmodel.UserId + \"/performance\"]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.PerformanceReviewAssignToEmployeeNotification.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/profile/\" + CurrentUserId + \"/performance\"]);\r\n }\r\n this.store.dispatch(new UpsertUnreadNotificationsTriggered(notifications));\r\n }\r\n\r\n upsertReadNewNotification(notification) {\r\n let notes: NotificationModel[] = [notification];\r\n this.signalr.upsertReadNewNotifications(notes)\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n this.signalr.removeItemFromNotifications(notification.id);\r\n }\r\n });\r\n if (notification.navigationUrl) {\r\n window.open(notification.navigationUrl, \"_blank\");\r\n }\r\n\r\n }\r\n\r\n clearNewAll(e) {\r\n this.signalr.upsertReadNewNotifications(this.newNotifications)\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n this.signalr.removeAllNotifications();\r\n }\r\n });\r\n }\r\n\r\n public ngOnDestroy() {\r\n this.ngDestroyed$.next();\r\n }\r\n}\r\n","<div class=\"text-center mat-bg-primary pt-1 pb-1\">\r\n <!-- <mat-progress-bar *ngIf=\"(loadingNotifications$ | async)\"></mat-progress-bar> -->\r\n <h6 class=\"m-0\">{{ 'NOTIFICATIONS.NOTIFICATIONSTITLE' | translate }} ({{newNotifications?.length}})</h6>\r\n</div>\r\n<div id=\"style-1\" *ngIf=\"newNotifications.length != 0\">\r\n <mat-nav-list class=\"notification-list p-0 pr-03\" role=\"list\"\r\n *ngFor=\"let notification of (newNotifications | orderBy)\" >\r\n <mat-list-item class=\"notific-item pr-03 notification-margin\" role=\"listitem\"\r\n [ngClass]=\"{'notificataion-unread': !notificationColor ,'notificataion-read': notificationColor }\"\r\n routerLinkActive=\"open\" (click)=\"upsertReadNewNotification(notification)\">\r\n <div>\r\n <a>\r\n <div class=\"mat-list-text pl-0 pr-03 notification-cursor notifications-list-item\">\r\n <div class=\"word-break display-pre-line\" style=\"margin: 0px !important;\"\r\n [innerHTML]=\"notification.summary | sanitizeHtml\">\r\n </div>\r\n <small class=\"time text-muted\">{{ notification.createdDateTime | utcToLocalTime | timeago }}</small>\r\n </div>\r\n </a>\r\n </div>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n</div>\r\n<div class=\"text-center p-1\" *ngIf=\"newNotifications.length == 0\">\r\n {{ 'NOTIFICATIONS.NONOTIFICATIONSTITLE' | translate }}</div>\r\n<mat-divider></mat-divider>\r\n<div class=\"text-center mt-05 mb-05\" *ngIf=\"newNotifications.length\">\r\n <label class=\"mb-0\"><a (click)=\"clearNewAll($event)\">{{ 'NOTIFICATIONS.CLEARALLNOTIFICATIONS' | translate\r\n }}</a></label>\r\n</div>","import { Component, OnInit, ViewEncapsulation, NgModuleRef, NgModuleFactoryLoader, Inject, ViewContainerRef, Input, Output, EventEmitter, ComponentFactoryResolver, Compiler } from '@angular/core';\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { NgModuleFactory, Type } from '@angular/core';\r\nimport { ShellModulesService } from '../../services/shell.modules.service';\r\nimport * as _ from \"underscore\";\r\nimport { FeedtimesheetComponentProfile } from '@snovasys/snova-timesheet';\r\ntype ModuleWithComponentService = Type<any> & { componentService: Type<any> };\r\n\r\n@Component({\r\n selector: 'app-feed-time',\r\n templateUrl: 'feed-time.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class FeedTimeComponent extends CustomAppBaseComponent implements OnInit {\r\n\r\n componentInputs = {\r\n isFeedTimeSheet: false\r\n };\r\n @Input(\"isFeedTimeSheet\")\r\n set _isFeedTimeSheet(data: boolean) {\r\n if (data != undefined && data != null) {\r\n this.componentInputs = {\r\n isFeedTimeSheet: data\r\n };\r\n this.loadComponent();\r\n }\r\n }\r\n\r\n outputs = {\r\n closeFeedTimeSheetPopup: () => this.closeFeedTimeSheet()\r\n };\r\n\r\n @Output() closeFeedTimeSheetPopup = new EventEmitter<string>();\r\n private ngModuleRef: NgModuleRef<any>;\r\n injector: any;\r\n feedTimeComponent: any;\r\n\r\n constructor(\r\n private projectModulesService: ShellModulesService, private compiler: Compiler,\r\n private vcr: ViewContainerRef) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.injector = this.vcr.injector;\r\n super.ngOnInit();\r\n }\r\n\r\n closeFeedTimeSheet() {\r\n this.closeFeedTimeSheetPopup.emit();\r\n }\r\n\r\n loadComponent() {\r\n // var modules = this.shellModulesService[\"modules\"];\r\n var loader = this.projectModulesService[\"modules\"];\r\n var modules = JSON.parse(localStorage.getItem(\"Modules\"));\r\n var module = _.find(modules, function (module: any) { return module.modulePackageName == 'TimesheetPackageModule' });\r\n var path = loader[module.modulePackageName];\r\n\r\n (path() as Promise<NgModuleFactory<any> | Type<any>>)\r\n .then(elementModuleOrFactory => {\r\n if (elementModuleOrFactory instanceof NgModuleFactory) {\r\n // if ViewEngine\r\n return elementModuleOrFactory;\r\n } else {\r\n try {\r\n // if Ivy\r\n return this.compiler.compileModuleAsync(elementModuleOrFactory);\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n }).then((moduleFactory: NgModuleFactory<any>) => {\r\n\r\n const componentService = (moduleFactory.moduleType as ModuleWithComponentService).componentService;\r\n\r\n var allComponentsInModule = (<any>componentService).components;\r\n\r\n this.ngModuleRef = moduleFactory.create(this.injector);\r\n\r\n var componentDetails = allComponentsInModule.find(elementInArray =>\r\n elementInArray.name === \"Time punch card\"\r\n );\r\n\r\n this.feedTimeComponent = this.ngModuleRef.componentFactoryResolver.resolveComponentFactory(componentDetails.componentTypeObject);\r\n });\r\n }\r\n\r\n}\r\n\r\n","<ndc-dynamic [ndcDynamicFactory]=\"feedTimeComponent\"\r\n [ndcDynamicComponent]=\"feedTimeComponent\" [ndcDynamicInjector]=\"injector\"\r\n [ndcDynamicInputs]=\"componentInputs\" [ndcDynamicOutputs]=\"outputs\">\r\n</ndc-dynamic>","import { Component, OnInit, ViewEncapsulation, NgModuleRef, NgModuleFactoryLoader, Inject, ViewContainerRef, Input, Output, EventEmitter, ComponentFactoryResolver, Compiler } from '@angular/core';\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { NgModuleFactory, Type } from '@angular/core';\r\nimport { ShellModulesService } from '../../services/shell.modules.service';\r\nimport * as _ from \"underscore\";\r\nimport { FeedBackComponent } from '@snovasys/snova-feedback-module';\r\ntype ModuleWithComponentService = Type<any> & { componentService: Type<any> };\r\n\r\n@Component({\r\n selector: 'app-submit-feedback',\r\n templateUrl: 'submit-feedback.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class FeedBackSubmissionComponent extends CustomAppBaseComponent implements OnInit {\r\n\r\n componentInputs: any;\r\n outputs = {\r\n closeDialog: type => this.closeDialogRef(type)\r\n };\r\n\r\n @Output() closeDialog = new EventEmitter<string>();\r\n private ngModuleRef: NgModuleRef<any>;\r\n injector: any;\r\n shellFeedbackComponent: any;\r\n\r\n constructor(\r\n private shellModulesService: ShellModulesService,\r\n private vcr: ViewContainerRef,private projectModulesService: ShellModulesService, private compiler: Compiler) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.injector = this.vcr.injector;\r\n super.ngOnInit();\r\n this.loadComponent();\r\n }\r\n\r\n closeDialogRef(data) {\r\n this.closeDialog.emit(data);\r\n }\r\n\r\n loadComponent() {\r\n // var modules = this.shellModulesService[\"modules\"];\r\n var loader = this.projectModulesService[\"modules\"];\r\n var modules = JSON.parse(localStorage.getItem(\"Modules\"));\r\n var module = _.find(modules, function (module: any){ return module.modulePackageName == 'FeedbackPackageModule' });\r\n var path = loader[module.modulePackageName];\r\n\r\n (path() as Promise<NgModuleFactory<any> | Type<any>>)\r\n .then(elementModuleOrFactory => {\r\n if (elementModuleOrFactory instanceof NgModuleFactory) {\r\n // if ViewEngine\r\n return elementModuleOrFactory;\r\n } else {\r\n try {\r\n // if Ivy\r\n return this.compiler.compileModuleAsync(elementModuleOrFactory);\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n }).then((moduleFactory: NgModuleFactory<any>) => {\r\n\r\n const componentService = (moduleFactory.moduleType as ModuleWithComponentService).componentService;\r\n\r\n var allComponentsInModule = (<any>componentService).components;\r\n\r\n this.ngModuleRef = moduleFactory.create(this.injector);\r\n\r\n var componentDetails = allComponentsInModule.find(elementInArray =>\r\n elementInArray.name === \"Feedback comp\"\r\n );\r\n\r\n this.shellFeedbackComponent = this.ngModuleRef.componentFactoryResolver.resolveComponentFactory(componentDetails.componentTypeObject);\r\n });\r\n }\r\n\r\n}\r\n","<ndc-dynamic [ndcDynamicFactory]=\"shellFeedbackComponent\"\r\n [ndcDynamicComponent]=\"shellFeedbackComponent\" [ndcDynamicInjector]=\"injector\"\r\n [ndcDynamicInputs]=\"componentInputs\" [ndcDynamicOutputs]=\"outputs\">\r\n</ndc-dynamic>","import { Component, ElementRef, EventEmitter, Inject, Input, Output, ViewChild } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA, MatDialogRef, MatDialog } from \"@angular/material/dialog\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\n\r\n@Component({\r\n selector: \"announcement-dialog\",\r\n templateUrl: \"./announcement-dialog.component.html\"\r\n})\r\n\r\nexport class AnnoucementDialogComponent extends CustomAppBaseComponent {\r\n @Output() closeMatDialog = new EventEmitter<string>();\r\n\r\n @Input(\"data\")\r\n set _data(data: any) {\r\n if (data && data !== undefined) {\r\n let annoucementData = data[0];\r\n if (annoucementData) {\r\n this.currentDialogId = annoucementData.dialogId;\r\n this.currentDialog = this.dialog.getDialogById(this.currentDialogId);\r\n this.announcementId = annoucementData.announcementId;\r\n this.announcement = annoucementData.announcement;\r\n this.announcedBy = annoucementData.announcedBy;\r\n this.announcedById = annoucementData.announcedById;\r\n this.announcedOn = annoucementData.announcedOn;\r\n this.announcedByUserImage = annoucementData.announcedByUserImage;\r\n }\r\n }\r\n }\r\n announcementId: string;\r\n announcement: string;\r\n announcedBy: string;\r\n announcedOn: string;\r\n announcedById: string;\r\n announcedByUserImage: string;\r\n currentDialogId: string;\r\n currentDialog: any;\r\n\r\n constructor(\r\n public AppDialog: MatDialogRef<AnnoucementDialogComponent>,\r\n public routes: Router, @Inject(MAT_DIALOG_DATA) public data: any, public dialog: MatDialog) {\r\n super();\r\n this.announcementId = data.announcementId;\r\n this.announcement = data.announcement;\r\n this.announcedBy = data.announcedBy;\r\n this.announcedById = data.announcedById;\r\n this.announcedOn = data.announcedOn;\r\n this.announcedByUserImage = data.announcedByUserImage;\r\n }\r\n\r\n onNoClick(): void {\r\n this.closeMatDialog.emit(\"\");\r\n this.currentDialog.close();\r\n }\r\n\r\n ngOnInit() {\r\n super.ngOnInit();\r\n }\r\n}\r\n","<div class=\"custom-dialog\">\r\n <div class=\"custom-close\" mat-dialog-close (click)=\"onNoClick()\">\r\n <fa-icon icon=\"times\" class=\"project-dialog\"></fa-icon>\r\n </div>\r\n</div>\r\n<div mat-dialog-content class=\"project-dialogContent\" id=\"style-1\">\r\n <mat-card class=\"p-0\">\r\n <div fxLayout=\"row\" class=\"announcement\">\r\n <div fxFlex fxLayout=\"column\">\r\n <div fxFlex=\"100px\" fxLayoutAlign=\"space-around center\">\r\n <app-avatar matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{announcedBy}}\" [name]=\"announcedBy | removeSpecialCharacters\"\r\n [src]=\"announcedByUserImage | fetchSizedAndCachedImage: '80':''\" [isRound]=\"true\" size=\"80\">\r\n </app-avatar>\r\n </div>\r\n <div fxFlex fxLayoutAlign=\"space-around center\" style=\"text-align: center;\">\r\n <span [innerHTML]=\"announcement | sanitizeHtml\"></span>\r\n </div>\r\n <div class=\"mb-1\" fxFlex=\"20px\" fxLayoutAlign=\"space-around center\">\r\n {{ announcedOn | utcToLocalTime | date: 'dd/MM/yyyy HH:mm' }}\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card>\r\n</div>","import { UserDetailsFetchedAfterLogin, UserDetailsFetchedAfterCompanyLogin, FetchTimeSheetButtonDetails, RolesFetchTriggered } from './../../store/actions/authentication.actions';\r\nimport {\r\n Component,\r\n Inject,\r\n Input,\r\n OnInit,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n NgModuleRef,\r\n NgModuleFactoryLoader,\r\n ViewContainerRef, ViewChildren, ChangeDetectorRef, TemplateRef\r\n} from \"@angular/core\";\r\nimport {\r\n ReceiveMessageTriggered,\r\n PresenceEventTriggered,\r\n InitalStateOfUsersTriggered,\r\n MessageActionTypes,\r\n ReceiveChannelUpdateModelTriggered,\r\n ReceiveSignalTriggered,\r\n} from \"../../store/actions/chat.actions\"\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { Router } from \"@angular/router\";\r\nimport { SatPopover } from \"@ncstate/sat-popover\";\r\nimport { select, Store } from \"@ngrx/store\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\n\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { takeUntil, tap } from \"rxjs/operators\";\r\nimport { GetUserStoreIdTriggered, AuthenticationActionTypes } from \"../../store/actions/authentication.actions\";\r\nimport { ClearAllUnreadNotificationsTriggered, ClearUnreadNotificationsTriggered, NewNotificationReceived, NotificationsActionTypes, UpsertUnreadNotificationsTriggered } from \"../../store/actions/notifications.actions\";\r\nimport { State } from \"../../store/reducers/index\";\r\nimport * as sharedModuleReducers from \"../../store/reducers/index\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { ConfirmationDialogComponent } from \"../confirmation-dialog/confirmation-dialog.component\";\r\nimport { CommonService } from \"../../services/common-used.service\";\r\nimport { Actions, ofType } from \"@ngrx/effects\";\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { ChannelNames } from '../../constants/channel-names';\r\nimport { WINDOW } from '../../../globaldependencies/helpers/window.helper';\r\nimport { AuthenticationService } from '../../services/authentication.service';\r\nimport { ThemeService } from '../../services/theme.service';\r\nimport { LayoutService } from '../../services/layout.service';\r\nimport { TimesheetDisableorEnable } from '../../models/timesheetenabledisable';\r\nimport { ThemeModel } from '../../models/themes.model';\r\nimport { NotificationModel, NotificationOutputModel } from '../../models/NotificationsOutPutModel';\r\nimport { CustomAppBaseComponent } from '../../../globaldependencies/components/componentbase';\r\nimport { SoftLabelConfigurationModel } from '../../models/softlabels-model';\r\nimport { UserModel } from '../../models/user';\r\nimport { CompaniesList } from '../../models/companieslist.model';\r\nimport { StoreModel } from '../../models/store-model';\r\nimport { AppNotification } from '../../models/AppNotification';\r\nimport { StoreSearchModel } from '../../models/store-search-model';\r\nimport { NgModuleFactory, Type } from '@angular/core';\r\nimport { WorkItemsDialogComponent } from '../all-work-items-dialog/all-work-items-dialog.component';\r\nimport { ShellModulesService } from '../../services/shell.modules.service';\r\nimport * as _ from \"underscore\";\r\nimport { FeedTimeDialogComponent } from '../feed-time/feed-time-dialog.component';\r\nimport { NotificationTypeIds } from '../../constants/notification-type-ids';\r\nimport { UserStoryAssignedNotification } from '../../models/UserStoryAssignedNotification';\r\nimport { ChannelRoutes } from '../../constants/notification-routes';\r\nimport { RoleUpdatedNotification } from '../../models/RoleUpdatedNotification';\r\nimport { ReportSubmittedNotification } from '../../models/ReportSubmittedNotification';\r\nimport { ReportConfigAssignedNotification } from '../../models/ReportConfigAssignedNotification';\r\nimport { MultipleChartsScheduling } from '../../models/multiChartsScheduling';\r\nimport { AssetAssignedNotification } from '../../models/AssetAssignedNotificationModel';\r\nimport { NewProjectCreatedNotificationModel } from '../../models/NewProjectCreatedNotificationModel';\r\nimport { GoalApprovedNotificationModel } from '../../models/goalApprovedNotificationModel';\r\nimport { UserStoryUpdateNotificationModel } from '../../models/userStoryUpdateNotificationModel';\r\nimport { UserStoryCommentNotificationModel } from '../../models/userStoryCommentNotificationModel';\r\nimport { SprintStartedNotificationModel } from '../../models/sprintStartedNotificationModel';\r\nimport { SprintReplanStartedNotificationModel } from '../../models/sprintReplanRequestedModel';\r\nimport { AnnoucementDialogComponent } from '../notifications/announcement-dialog.component';\r\nimport { WorkspaceList } from '../../models/workspaceList';\r\nimport { animate, style, transition, trigger } from '@angular/animations';\r\nimport { NgxUiLoaderService, SPINNER } from 'ngx-ui-loader';\r\nimport { NewProjectFeatureCreatedNotificationModel } from '../../models/NewProjectFeatureNotificationModel';\r\nimport { UserStoryArchiveNotificationModel } from '../../models/archiveUserStoryModel';\r\nimport { UserStoryParkNotificationModel } from '../../models/parkUserStoryInputModel';\r\nimport { ExportConfigurationDialogComponent } from '../export-import-configuration/export-configuration.component';\r\nimport { FileModel, FileResultModel, StoreManagementService, UpsertFileModel } from '@snovasys/snova-document-management';\r\nimport { ToastrService } from 'ngx-toastr';\r\ntype ModuleWithComponentService = Type<any> & { componentService: Type<any> };\r\n// import { ConstantVariables } from \"../constants/constant-variables\";\r\nimport Resumable from \"resumablejs\";\r\nimport { ApiUrls } from '../../constants/api-urls';\r\nimport { AvailableLangs } from '../../constants/available-languages';\r\nimport { ImportConfigurationModel } from '../../models/import-configuration-model';\r\nimport { ChatService } from '../../services/chat.service';\r\nimport { MessageDetails } from '../../models/MessageDetails';\r\nimport { ChannelUpdateModel } from '../../models/ChannelUpdateModel';\r\nimport { PushNotificationsService } from 'ng-push-ivy';\r\nimport { MessageTypingDetails } from '../../models/MessageTypingDetails';\r\nimport { PubNubAngular } from 'pubnub-angular2';\r\n\r\n\r\nimport { IntroModel } from \"../../models/IntroModel\";\r\nimport { LeaveApplicationNotification } from '../../models/leaveApplicationNotifiction';\r\nimport { SignalrService } from '../../services/signalr.service';\r\n\r\n/** @dynamic */\r\n\r\n@Component({\r\n selector: \"app-header-side\",\r\n templateUrl: \"./header-side.template.html\",\r\n animations: [\r\n trigger('fade', [\r\n transition('void => *', [\r\n style({ opacity: 0 }),\r\n animate(2000, style({ opacity: 1 })),\r\n animate(6000, style({ opacity: 0 }))\r\n ])\r\n ])\r\n ]\r\n})\r\n\r\nexport class HeaderSideComponent extends CustomAppBaseComponent implements OnInit {\r\n @ViewChild('feedTimeSheet') feedTimeSheetPopover: SatPopover;\r\n @ViewChild('feedBackPopover') feedBackPopOver: SatPopover;\r\n @ViewChildren(\"fileUploadDropzonePopup\") fileUploadDropzonePopup;\r\n @ViewChild('documentPopover') documentPopover: SatPopover;\r\n softLabels: SoftLabelConfigurationModel[];\r\n @Input() notificPanel;\r\n @Output() opened = new EventEmitter<any>();\r\n @ViewChild(\"openAnnoucementDialogComponent\") private openAnnoucementDialogComponent: TemplateRef<any>;\r\n spinnerType = SPINNER.circle;\r\n public availableLangs = AvailableLangs.languages;\r\n public availableLangsMobile = [\r\n {\r\n name: \"En\",\r\n code: \"en\"\r\n },\r\n {\r\n name: \"Te\",\r\n code: \"te\"\r\n },\r\n {\r\n name: \"Ko\",\r\n code: \"ko\"\r\n },\r\n {\r\n name: \"Ar\",\r\n code: \"ar\"\r\n }\r\n ];\r\n // themeModel$: Observable<ThemeModel>;\r\n countOfNotifications$: Observable<number>;\r\n notifications$: Observable<NotificationOutputModel[]>;\r\n unreadCountOfNotifications$: Observable<number>;\r\n assetId$: Observable<string>;\r\n userStoreId$: Observable<string>;\r\n themeModel: ThemeModel;\r\n reload: boolean;\r\n public ngDestroyed$ = new Subject();\r\n dashboardFilters = {\r\n projectId: null,\r\n userId: null,\r\n goalId: null,\r\n isDailogue: true\r\n };\r\n public egretThemes;\r\n public layoutConf: any;\r\n public timesheetDisableorEnable: TimesheetDisableorEnable;\r\n domains: any[];\r\n loadingInProgress$: Observable<boolean>;\r\n timePunchCardShow = false;\r\n showTrailPeriod: boolean = false;\r\n applicationVersion: any;\r\n companiesList = [];\r\n menuType: string\r\n isFeedBackDialog: boolean;\r\n selectedLangName: string;\r\n currentLang: string;\r\n selectedStoreId: string = \"\";\r\n userStoreId: string;\r\n storesList: StoreModel[];\r\n validationMessage: string;\r\n isRecording: boolean = false;\r\n projectRoleText: string = 'Project role configuration';\r\n loggedInUserId: string = \"\";\r\n company: any;\r\n loggedUserDetails: any;\r\n noOfDays: any;\r\n showDeleteIcon: boolean = false;\r\n showDelete: boolean = false;\r\n isStoreAccess: boolean = true;\r\n companyId: string;\r\n returnUrl: string;\r\n selectedCompanyName: string;\r\n selectedCompany: CompaniesList;\r\n userName: string;\r\n loading: boolean;\r\n authenticatedUserRecord: UserModel;\r\n employeeId: string;\r\n isFeedTimeSheet: boolean;\r\n defaultDashboardId: string;\r\n timeSheetButtonDetails$: Observable<TimesheetDisableorEnable>\r\n notifications: NotificationOutputModel[];\r\n announcementId: string;\r\n announceNotificationId: string;\r\n displayWelcomeNote: boolean;\r\n loggedInCount: any;\r\n userFullName: any;\r\n files: File[] = [];\r\n filesPresent: boolean;\r\n progressValue: number;\r\n fileResultModel: FileResultModel[];\r\n moduleTypeId = 9;\r\n anyOperationInProgress: boolean;\r\n fileIndex: number = 0;\r\n fileCounter: number = 1;\r\n uploadedFileNames = [];\r\n isFileUploadCompleted: boolean = false;\r\n isFolderUploadCompleted: boolean = false;\r\n importingInProgress: boolean;\r\n searchText: string = null;\r\n // messagesUnreadCount: number = 0;\r\n channelList: any;\r\n userChannels: any;\r\n colleaguesList: any;\r\n loggedInUserfullName: any;\r\n logInUserId = this.cookieService.get(\"CurrentUserId\");\r\n loginUserchannelName: string;\r\n previousMessage : any;\r\n publishingMessageOfUser :any;\r\n newNotificationsCount: any = 0;\r\n\r\n constructor(\r\n private pushNotifications: PushNotificationsService,\r\n private themeService: ThemeService,\r\n private ngxService: NgxUiLoaderService,\r\n private layout: LayoutService,\r\n public translate: TranslateService,\r\n public router: Router,\r\n private cookieService: CookieService,\r\n public dialog: MatDialog,\r\n private commonService: CommonService,\r\n private store: Store<State>,\r\n private pubnub: PubNubAngular,\r\n private authService: AuthenticationService,\r\n private actionUpdates$: Actions,\r\n private cdRef: ChangeDetectorRef,\r\n private toastr: ToastrService,\r\n private storeManagementService: StoreManagementService,\r\n private ShellModulesService: ShellModulesService,\r\n private chatService: ChatService,\r\n private signalr: SignalrService,\r\n @Inject(WINDOW) private window: Window\r\n ) {\r\n super();\r\n // this.signalr.initializeSignalRConnection();\r\n this.signalr.notifications$.subscribe((data: any) => this.newNotificationsCount = data && data.length ? data.length : 0);\r\n\r\n this.pushNotifications.requestPermission();\r\n this.isRecording = false;\r\n // this.getActTrackerRecorder();\r\n if ((localStorage.getItem(LocalStorageProperties.UserModel) != null && localStorage.getItem(LocalStorageProperties.UserModel) != undefined)\r\n ) {\r\n this.loadNotifications();\r\n }\r\n let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);\r\n const companylan = JSON.parse(this.cookieService.get(LocalStorageProperties.CompanyDetails));\r\n let currentCulturelan = companylan.lanCode;\r\n\r\n if (currentCulture == '' || currentCulture == null || currentCulture == undefined || currentCulture === 'null' || currentCulture === 'undefined') {\r\n if (currentCulturelan == '' || currentCulturelan == null || currentCulturelan == undefined || currentCulturelan === 'null' || currentCulturelan === 'undefined') {\r\n currentCulture = 'en';\r\n }\r\n else {\r\n currentCulture = currentCulturelan;\r\n }\r\n }\r\n this.currentLang = currentCulture;\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentCulture, this.currentLang, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(AuthenticationActionTypes.UserDetailsFetchedAfterCompanyLogin),\r\n tap(() => {\r\n this.reload = true;\r\n // this.chatService.getRecentChannelMessages().subscribe((recentChannelMessages: any) => {\r\n // recentChannelMessages.data.forEach(element => {\r\n // this.messagesUnreadCount += element.unreadMessageCount;\r\n // });\r\n // });\r\n // this.chatService.getRecentIndividualMessages().subscribe((recentColleagueMessages: any) => {\r\n // var uniq = {};\r\n // recentColleagueMessages.data = recentColleagueMessages.data.filter(obj => !uniq[obj.id] && (uniq[obj.id] = true));\r\n // recentColleagueMessages.data.forEach(element => {\r\n // if(element.id != this.loggedInUserId){\r\n // this.messagesUnreadCount += element.unreadMessageCount;\r\n // }\r\n // });\r\n // });\r\n this.getIntroDetails();\r\n this.ngOnInit();\r\n this.getNotifications();\r\n this.getTeamMembers();\r\n var DefaultDashboardIdForLoggedInUser = this.cookieService.check(LocalStorageProperties.DefaultDashboard) ? JSON.parse(this.cookieService.get(LocalStorageProperties.DefaultDashboard)) : null;\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n if (!DefaultDashboardIdForLoggedInUser) {\r\n this.router.navigate([this.returnUrl]);\r\n } else if (userReference != \"null\" && userReference != null) {\r\n this.router.navigateByUrl(\"dashboard-management/dashboard/\" + DefaultDashboardIdForLoggedInUser + \"/form/\" + userReference);\r\n } else {\r\n this.router.navigateByUrl(\"dashboard-management/dashboard/\" + DefaultDashboardIdForLoggedInUser);\r\n }\r\n\r\n })\r\n )\r\n .subscribe();\r\n\r\n\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(AuthenticationActionTypes.UserDetailsFetchedAfterLogin),\r\n tap(() => {\r\n setTimeout(() => {\r\n if (this.cookieService.check(LocalStorageProperties.CurrentUserId)) {\r\n const CurrentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n // Subscribe to Task Assignment Notificaitons here.\r\n const taskAssignmentChannelToSubscribeInto = ChannelNames.Channel_TaskAssignments + CurrentUserId;\r\n const tastatusReportSubmissionChannelToSubscribeInto = ChannelNames.Channel_StatusReportSubmission + CurrentUserId;\r\n const tastatusConfigAssignChannelToSubscribeInto = ChannelNames.Channel_StatusConfigAssign + CurrentUserId;\r\n const multiChartsSchedulingChannelToSubscribeInto = ChannelNames.Channel_MultiChartsScheduling + CurrentUserId;\r\n const assetsAssignedChannelToSubscribeInto = ChannelNames.Channel_AssetAssignment + CurrentUserId;\r\n const projectCreatedChannelToSubscribeInto = ChannelNames.Channel_NewProject + CurrentUserId;\r\n const projectAccessToMemberChannelToSubscribeInto = ChannelNames.Channel_ProjectMemberRole + CurrentUserId;\r\n const goalApprovedChannelToSubscribeInto = ChannelNames.Channel_GoalApprovedFromReplan + CurrentUserId;\r\n const userStoryUpdateChannelToSubscribeInto = ChannelNames.Channel_UserStoryUpdateNotification + CurrentUserId;\r\n const AnnouncementChannelToSubscribeInto = ChannelNames.Channel_AnnouncementNotification + CurrentUserId;\r\n const purchaseExecutionAssignedChannelToSubscribeInto = ChannelNames.Channel_PurchaseExecutionAssignToEmployeeNotification + CurrentUserId;\r\n console.log(\"subscribing to \" + taskAssignmentChannelToSubscribeInto);\r\n console.log(\"subscribing to \" + tastatusReportSubmissionChannelToSubscribeInto);\r\n console.log(\"subscribing to \" + tastatusConfigAssignChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + assetsAssignedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectCreatedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectAccessToMemberChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + goalApprovedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryUpdateChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + AnnouncementChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + purchaseExecutionAssignedChannelToSubscribeInto);\r\n pubnub.subscribe({\r\n channels: [taskAssignmentChannelToSubscribeInto, tastatusReportSubmissionChannelToSubscribeInto,\r\n tastatusConfigAssignChannelToSubscribeInto, multiChartsSchedulingChannelToSubscribeInto,\r\n assetsAssignedChannelToSubscribeInto, projectCreatedChannelToSubscribeInto, ,\r\n projectAccessToMemberChannelToSubscribeInto, goalApprovedChannelToSubscribeInto,\r\n userStoryUpdateChannelToSubscribeInto, AnnouncementChannelToSubscribeInto,purchaseExecutionAssignedChannelToSubscribeInto]\r\n });\r\n\r\n // Add other subscriptions here.\r\n } else {\r\n console.log(\"User not logged in yet to be able to subscribe.\");\r\n }\r\n\r\n var roleUpdatesChannelToSubscribeInto = ChannelNames.Channel_RoleUpdates + \"19B6F9FC-7370-4B9C-A05C-3B8D819EEEAF\";\r\n console.log(\"subscribing to \" + roleUpdatesChannelToSubscribeInto);\r\n pubnub.subscribe({\r\n channels: [roleUpdatesChannelToSubscribeInto]\r\n });\r\n }, 3000);\r\n })).subscribe();\r\n\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(NotificationsActionTypes.ClearAllUnreadNotificationsCompleted),\r\n tap(() => {\r\n this.notifications$ = this.store.pipe(select(sharedModuleReducers.getNotificationAll));\r\n this.notifications$.subscribe(x => {\r\n this.notifications = x;\r\n const index = this.notifications.findIndex((p) => JSON.parse(p.notificationJson).NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Announcement_Received.toString().toLowerCase());\r\n if (index > -1) {\r\n //this.announceNotificationId = JSON.parse(this.notifications[index].notificationJson).notificationId;\r\n this.announceNotificationId = this.notifications[index].notificationId;\r\n this.openAnnouncementDialog(JSON.parse(this.notifications[index].notificationJson));\r\n\r\n }\r\n });\r\n\r\n })\r\n )\r\n .subscribe();\r\n\r\n // this.actionUpdates$\r\n // .pipe(\r\n // takeUntil(this.ngDestroyed$),\r\n // ofType(MessageActionTypes.CountCompleted),\r\n // tap((result: any) => {\r\n // this.messagesUnreadCount = result.messageCount;\r\n // this.cdRef.detectChanges();\r\n // })\r\n // )\r\n // .subscribe();\r\n\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(MessageActionTypes.RequestingStateOfUsersCompleted),\r\n tap((result: any) => {\r\n this.subScribingToPresenceChannel();\r\n \r\n })\r\n )\r\n .subscribe();\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(MessageActionTypes.MessageCompleted),\r\n tap((result: any) => {\r\n var messageDetails = result['messageDetails'];\r\n this.publishingMessageOfUser = messageDetails;\r\n this.publishingMessage();\r\n })\r\n )\r\n .subscribe();\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(MessageActionTypes.SendChannelUpdateModelCompleted),\r\n tap((result: any) => {\r\n var channelUpdateModel = result['channelUpdateModel'];\r\n var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n this.pubnub.publish({\r\n channel: [(loginCompanyId + '-' + channelUpdateModel.channelId)],\r\n message: JSON.stringify(channelUpdateModel)\r\n }, function (status, resopnse) {\r\n // console.log(status)\r\n // console.log(resopnse)\r\n })\r\n })\r\n )\r\n .subscribe();\r\n \r\n \r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(MessageActionTypes.SendingSignalCompleted),\r\n tap((result: any) => {\r\n var messageTypingDetails = result.messageTypingDetails;\r\n var signalMessage= new MessageTypingDetails();\r\n signalMessage.state = messageTypingDetails.state;\r\n console.log(messageTypingDetails,signalMessage);\r\n // this.pubnub.signal({\r\n // channel:[messageTypingDetails.pubnubChannelNameOfMessage],\r\n // message : JSON.stringify(signalMessage)\r\n // })\r\n })\r\n )\r\n .subscribe(); \r\n const storeListner = (message) => {\r\n console.log(\"---------Received pubnub message---------\");\r\n //this.toastr.info(message.message.Summary);\r\n try {\r\n //Receiving the User Story Assigned Notification\r\n if (typeof (message.message) == 'string') {\r\n var indexOfCurrentTopic: number;\r\n var messageDetailsObject = JSON.parse(message.message);\r\n if (messageDetailsObject.textMessage || messageDetailsObject.filePath || messageDetailsObject.messageType) {\r\n this.store.dispatch(new ReceiveMessageTriggered(messageDetailsObject));\r\n }\r\n else if (messageDetailsObject.isFromChannelArchive == true ||\r\n messageDetailsObject.isFromRemoveMember == true ||\r\n messageDetailsObject.refreshChannels == true || messageDetailsObject.isFromAddMember == true) {\r\n this.chatService.getUserChannels().subscribe((channels: any) => {\r\n this.channelList = channels.data;\r\n var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n var channelName = loginCompanyId + '-' + messageDetailsObject.channelId;\r\n var index = this.channelList.findIndex(x => x.id == messageDetailsObject.channelId);\r\n if (index != -1 && (messageDetailsObject.refreshChannels == true || messageDetailsObject.isFromAddMember == true)) {\r\n this.pubnub.subscribe({\r\n channels: [channelName]\r\n })\r\n } else {\r\n if (index == -1) {\r\n this.pubnub.unsubscribe({\r\n channels: [channelName]\r\n })\r\n }\r\n }\r\n this.store.dispatch(new ReceiveChannelUpdateModelTriggered(messageDetailsObject));\r\n });\r\n }\r\n \r\n if (this.router.routerState.snapshot.url != \"/chat\" && messageDetailsObject.messageType != \"Reaction\" && messageDetailsObject.body != null && messageDetailsObject.title != null && (messageDetailsObject.isPinned == null || messageDetailsObject.isPinned == undefined) && (messageDetailsObject.isStarred == null || messageDetailsObject.isStarred == undefined) && messageDetailsObject.senderUserId != this.logInUserId ) {\r\n if (messageDetailsObject.channelId) {\r\n this.chatService.getUserChannels().subscribe((channels: any) => {\r\n this.channelList = channels.data;\r\n indexOfCurrentTopic = this.channelList.findIndex(x => x.id == messageDetailsObject.channelId);\r\n if (indexOfCurrentTopic != -1) {\r\n // this.notificationOfChat(messageDetailsObject);\r\n }\r\n });\r\n } else {\r\n // this.notificationOfChat(messageDetailsObject);\r\n }\r\n }\r\n } else\r\n if (message.message.NotificationTypeGuid == NotificationTypeIds.Notification_WorkItemAssignedToUser) {\r\n var userStoryAssignedNotification = new UserStoryAssignedNotification();\r\n userStoryAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n userStoryAssignedNotification.route = ChannelRoutes.ViewWorkItem + userStoryAssignedNotification.notificationId;\r\n this.store.dispatch(new NewNotificationReceived(userStoryAssignedNotification));\r\n } else if (message.message.NotificationTypeGuid == NotificationTypeIds.GenericNotificationActivity) {\r\n var userStoryAssignedNotification = new UserStoryAssignedNotification();\r\n userStoryAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n // userStoryAssignedNotification.route = ChannelRoutes.ViewWorkItem + userStoryAssignedNotification.notificationId;\r\n this.store.dispatch(new NewNotificationReceived(userStoryAssignedNotification));\r\n } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Notification_RoleUpdated) {\r\n var roleUpdatedNotification = new RoleUpdatedNotification();\r\n roleUpdatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n roleUpdatedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(roleUpdatedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Status_Report_Sumitted) {\r\n var reportSubmittedNotification = new ReportSubmittedNotification();\r\n reportSubmittedNotification.loadFromCaseInsensitiveObject(message.message);\r\n reportSubmittedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(reportSubmittedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Status_Report_Config_Created) {\r\n var reportConfigAssignedNotification = new ReportConfigAssignedNotification();\r\n reportConfigAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n reportConfigAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(reportConfigAssignedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Multiple_Charts_Scheduling_created) {\r\n var multipleChartsScheduling = new MultipleChartsScheduling();\r\n multipleChartsScheduling.loadFromCaseInsensitiveObject(message.message);\r\n multipleChartsScheduling.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(multipleChartsScheduling));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid == NotificationTypeIds.Assets_Assignment) {\r\n const assetAssignedNotification = new AssetAssignedNotification();\r\n assetAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n assetAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(assetAssignedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Reminder_Notification.toString().toLowerCase()) {\r\n const assetAssignedNotification = new AssetAssignedNotification();\r\n assetAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n assetAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(assetAssignedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Announcement_Received.toString().toLowerCase()) {\r\n const assetAssignedNotification = new AssetAssignedNotification();\r\n assetAssignedNotification.loadFromCaseInsensitiveObject(message.message);\r\n assetAssignedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(assetAssignedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n // if (message.message.Id != this.announceNotificationId) {\r\n // this.announceNotificationId = message.message.Id;\r\n // this.openAnnouncementDialog(message.message);\r\n // }\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.Performance_Received.toString().toLowerCase() || message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ProjectMemberRoleAddedNotificationId.toString().toLowerCase()) {\r\n const newProjectCreatedNotification = new NewProjectCreatedNotificationModel();\r\n newProjectCreatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n newProjectCreatedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(newProjectCreatedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.NewProjectCreatedNotificationId.toString().toLowerCase() || message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ProjectMemberRoleAddedNotificationId.toString().toLowerCase()) {\r\n const newProjectCreatedNotification = new NewProjectCreatedNotificationModel();\r\n newProjectCreatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n newProjectCreatedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(newProjectCreatedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.GoalApprovedFromReplan.toString().toLowerCase()) {\r\n const goalApprovedNotificationModel = new GoalApprovedNotificationModel();\r\n goalApprovedNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n goalApprovedNotificationModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(goalApprovedNotificationModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.USerStoryUpdateNotificationId.toString().toLowerCase()) {\r\n const userStoryUpdateNotificationModel = new UserStoryUpdateNotificationModel();\r\n userStoryUpdateNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n userStoryUpdateNotificationModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(userStoryUpdateNotificationModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.PushNotificationForUserStoryComment.toString().toLowerCase()) {\r\n const userStoryCommentNotificationModel = new UserStoryCommentNotificationModel();\r\n userStoryCommentNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n userStoryCommentNotificationModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(userStoryCommentNotificationModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.SprintStarted.toString().toLowerCase()) {\r\n const sprintStartedNotificationModel = new SprintStartedNotificationModel();\r\n sprintStartedNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n sprintStartedNotificationModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(sprintStartedNotificationModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.SprintRequestdForREplan.toString().toLowerCase()) {\r\n const sprintReplanStartedNotificationModel = new SprintReplanStartedNotificationModel();\r\n sprintReplanStartedNotificationModel.loadFromCaseInsensitiveObject(message.message);\r\n sprintReplanStartedNotificationModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(sprintReplanStartedNotificationModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ProjectFeature.toString().toLowerCase()) {\r\n const newProjectFeatureCreatedNotification = new NewProjectFeatureCreatedNotificationModel();\r\n newProjectFeatureCreatedNotification.loadFromCaseInsensitiveObject(message.message);\r\n newProjectFeatureCreatedNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(newProjectFeatureCreatedNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.UserStoryArchive.toString().toLowerCase()) {\r\n const newUserStoryArchiveModel = new UserStoryArchiveNotificationModel();\r\n newUserStoryArchiveModel.loadFromCaseInsensitiveObject(message.message);\r\n newUserStoryArchiveModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(newUserStoryArchiveModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.UserStoryPark.toString().toLowerCase()) {\r\n const newUserStoryParkModel = new UserStoryParkNotificationModel();\r\n newUserStoryParkModel.loadFromCaseInsensitiveObject(message.message);\r\n newUserStoryParkModel.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(newUserStoryParkModel));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.LeaveApplication.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ApproveLeaveApplication.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.RejectLeaveApplication.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ResignationNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ResignationApprovalNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ResignationRejectionNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.AutoTimeSheetSubmissionNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ProbationAssignNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ReviewAssignToEmployeeNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ReviewSubmittedByEmployeeNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.ReviewInvitationNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.PerformanceReviewSubmittedByEmployeeNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.PerformanceReviewInvitationNotificationModel.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n } \r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.PerformanceReviewAssignToEmployeeNotification.toString().toLowerCase()) {\r\n const leaveApplicationNotification = new LeaveApplicationNotification();\r\n leaveApplicationNotification.loadFromCaseInsensitiveObject(message.message);\r\n leaveApplicationNotification.route = ChannelRoutes.ViewAccount;\r\n this.store.dispatch(new NewNotificationReceived(leaveApplicationNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n }\r\n else if (message.message.NotificationTypeGuid.toString().toLowerCase() == NotificationTypeIds.PurchaseShipmentNotificationId.toString().toLowerCase()) {\r\n const purchaseExecutionNotification = new LeaveApplicationNotification();\r\n purchaseExecutionNotification.loadFromCaseInsensitiveObject(message.message);\r\n purchaseExecutionNotification.route = ChannelRoutes.EditPurchaseExecution;\r\n this.store.dispatch(new NewNotificationReceived(purchaseExecutionNotification));\r\n this.store.dispatch(new RolesFetchTriggered());\r\n }\r\n else {\r\n // TODO: Send these errors onto server for further processing\r\n console.log(\"Found undetected notification type. \" + message.message.NotificationTypeGuid);\r\n }\r\n // Add other notifications here.\r\n \r\n } catch (exception) {\r\n // TODO: Send these exceptions onto server for further processing\r\n console.log(\"Exception Occured\" + exception.message);\r\n }\r\n };\r\n const statusOfUser = (presenceEvent) => {\r\n this.store.dispatch(new PresenceEventTriggered(presenceEvent));\r\n }\r\n const typingStatus = (signalEvent) => {\r\n this.store.dispatch(new ReceiveSignalTriggered(signalEvent));\r\n } \r\n this.chatService.getPubnubKeys().subscribe((keys:any) =>{\r\n this.pubnub.init({\r\n publishKey : keys.data.publishKey,\r\n subscribeKey :keys.data.subscribeKey,\r\n uuid : this.logInUserId\r\n })\r\n this.chatService.getAllUsersForSlackApp().subscribe((colleagues: any) => {\r\n this.colleaguesList = colleagues.data;\r\n this.chatService.getUserChannels().subscribe((channels: any) => {\r\n this.channelList = channels.data;\r\n this.signOutUserChannels();\r\n var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n if (this.channelList != undefined || this.channelList != null) {\r\n for (var index1 = 0; index1 < this.channelList.length; index1++) {\r\n this.pubnub.subscribe({\r\n channels: [(loginCompanyId + '-' + this.channelList[index1].id)]\r\n });\r\n }\r\n }\r\n this.pubnub.subscribe({\r\n channels: [('ChannelUpdates-' + loginCompanyId)]\r\n });\r\n this.pubnub.subscribe({\r\n channels: [('UserUpdates-' + loginCompanyId)]\r\n });\r\n var index12 = this.colleaguesList.findIndex(x => x.userId == this.logInUserId);\r\n if(index12 > -1){\r\n var name = this.colleaguesList[index12].fullName;\r\n name = name.trim();\r\n name = this.replaceAll(name, \" \", \"\")\r\n this.loginUserchannelName = (name + '-' + this.logInUserId);\r\n this.pubnub.subscribe({\r\n channels: [this.loginUserchannelName]\r\n });\r\n }\r\n })\r\n }) \r\n this.pubnub.addListener({\r\n status: st => {\r\n if (st.category === \"PNUnknownCategory\") {\r\n var newState = {\r\n new: \"error\"\r\n };\r\n this.pubnub.setState(\r\n {\r\n state: newState\r\n }\r\n // function (status) {\r\n // console.log(st.errorData.message);\r\n // }\r\n );\r\n }\r\n },\r\n signal: signalEvent => {\r\n typingStatus(signalEvent)\r\n },\r\n presence: presenceEvent => {\r\n statusOfUser(presenceEvent)\r\n },\r\n message: message => {\r\n console.log(\"subscribed to \" + message);\r\n storeListner(message);\r\n }\r\n });\r\n });\r\n }\r\n async signOutUserChannels(){\r\n this.pubnub.unsubscribe({ channels: [this.loginUserchannelName] });\r\n var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n if (this.channelList != undefined || this.channelList != null) {\r\n for (var index = 0; index < this.channelList.length; index++) {\r\n this.pubnub.unsubscribe({\r\n channels: [(loginCompanyId + '-' + this.channelList[index].id)]\r\n });\r\n }\r\n }\r\n this.pubnub.unsubscribe({\r\n channels: [('ChannelUpdates-' + loginCompanyId)]\r\n });\r\n this.pubnub.unsubscribe({\r\n channels: [('UserUpdates-' + loginCompanyId)]\r\n });\r\n }\r\n\r\n async subScribingToPresenceChannel(){\r\n var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n var presenceChannel = \"MessengerPresence-\" + loginCompanyId;\r\n await this.pubnub.subscribe({\r\n channels: [presenceChannel],\r\n withPresence: true\r\n });\r\n this.pubnub.hereNow({\r\n channels: [presenceChannel],\r\n includeUUIDs: true,\r\n includeState: true\r\n },\r\n (status, response) => {\r\n this.store.dispatch(new InitalStateOfUsersTriggered(response))\r\n }\r\n );\r\n\r\n }\r\n publishingMessage() {\r\n if (this.publishingMessageOfUser.pubnubChannelNameOfMessage.length > 0) {\r\n this.publishingMessageOfUser.pubnubChannelNameOfMessage.forEach(channelName => {\r\n this.pubnub.publish({\r\n channel: [channelName],\r\n message: JSON.stringify(this.publishingMessageOfUser)\r\n }, function (status, resopnse) {\r\n // console.log(status)\r\n // console.log(resopnse)\r\n })\r\n });\r\n }\r\n }\r\n\r\n openAnnouncementDialog(announced) {\r\n this.dialog.closeAll();\r\n let dialogId = \"annoucement-dialog\";\r\n const dialogRef = this.dialog.open(this.openAnnoucementDialogComponent, {\r\n minWidth: \"60vw\",\r\n maxWidth: \"60vw\",\r\n minHeight: \"50vh\",\r\n maxHeight: \"80vh\",\r\n disableClose: true,\r\n id: dialogId,\r\n data: {\r\n dialogId: dialogId,\r\n announcementId: announced.AnnouncementId,\r\n announcement: announced.Announcement,\r\n announcedBy: announced.AnnouncedBy,\r\n announcedById: announced.AnnouncedById,\r\n announcedByUserImage: announced.AnnouncedByUserImage,\r\n announcedOn: announced.AnnouncedOn\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n const index = this.notifications.findIndex((p) => p.notificationId.toString().toLowerCase() == this.announceNotificationId.toString().toLowerCase());\r\n if (index > -1) {\r\n this.upsertReadNotification(this.notifications[index]);\r\n }\r\n });\r\n }\r\n // notificationOfChat(messageDetailsObject) {\r\n // if(this.previousMessage != messageDetailsObject){\r\n // this.messagesUnreadCount += 1;\r\n // var imageforNotification: any;\r\n // if (messageDetailsObject.senderProfileImage == null) {\r\n // imageforNotification = \"https://pngimage.net/wp-content/uploads/2018/05/avatar-png-images-1.png\";\r\n // }\r\n // else {\r\n // imageforNotification = messageDetailsObject.senderProfileImage;\r\n // }\r\n // let options = {\r\n // body: messageDetailsObject.body,\r\n // icon: imageforNotification,\r\n // data: {\r\n // senderUserId: messageDetailsObject.senderUserId,\r\n // channelId: messageDetailsObject.channelId\r\n // }\r\n // }\r\n // this.pushNotifications.create(messageDetailsObject.title, options).subscribe(\r\n // res => {\r\n // if (res.event.type === 'click') {\r\n // window.focus();\r\n // if (this.router.url != '/chat') {\r\n // if (res.notification.data.channelId != null && res.notification.data.channelId != undefined) {\r\n // localStorage.setItem(LocalStorageProperties.ChatId, res.notification.data.channelId);\r\n // } else {\r\n // localStorage.setItem(LocalStorageProperties.ChatId, res.notification.data.senderUserId);\r\n // }\r\n // this.router.navigate([\"/chat\"]);\r\n // }\r\n // }\r\n // },\r\n // err => console.log(err)\r\n // );\r\n // this.previousMessage = messageDetailsObject\r\n // }\r\n // }\r\n upsertReadNotification(selectedNotification) {\r\n const notifications = [];\r\n notifications.push(selectedNotification);\r\n const notiifcationmodel = JSON.parse(selectedNotification.notificationJson);\r\n if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.NewProjectCreatedNotificationId.toString().toLowerCase() ||\r\n selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.ProjectMemberRoleAddedNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/projectstatus/\" + notiifcationmodel.ProjectGuid + \"/active-goals\"]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.GoalApprovedFromReplan.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/goal/\" + notiifcationmodel.GoalGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.Notification_WorkItemAssignedToUser.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/workitem/\" + notiifcationmodel.UserStoryGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.USerStoryUpdateNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/workitem/\" + notiifcationmodel.UserStoryId]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.SprintStarted.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/sprint/\" + notiifcationmodel.SprintGuid]);\r\n }\r\n else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.PushNotificationForUserStoryComment.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/workitem/\" + notiifcationmodel.UserStoryGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.GoalRequestdForREplan.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/goal/\" + notiifcationmodel.GoalGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.SprintRequestdForREplan.toString().toLowerCase()) {\r\n this.router.navigate([\"projects/sprint/\" + notiifcationmodel.SprintGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.Notification_AdhocWorkItemAssignedToUser.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/adhoc-workitem/\" + notiifcationmodel.UserStoryGuid]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.AdhocUSerStoryUpdateNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"dashboard/adhoc-workitem/\" + notiifcationmodel.UserStoryId]);\r\n } else if (selectedNotification.notificationTypeId.toString().toLowerCase() ==\r\n NotificationTypeIds.PurchaseShipmentNotificationId.toString().toLowerCase()) {\r\n this.router.navigate([\"client/purchase-execution/\" + notiifcationmodel.PurchaseGuid]);\r\n }\r\n this.store.dispatch(new UpsertUnreadNotificationsTriggered(notifications));\r\n\r\n\r\n }\r\n loadNotifications() {\r\n const CurrentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n // Subscribe to Task Assignment Notificaitons here.\r\n const taskAssignmentChannelToSubscribeInto = ChannelNames.Channel_TaskAssignments + CurrentUserId;\r\n const tastatusReportSubmissionChannelToSubscribeInto = ChannelNames.Channel_StatusReportSubmission + CurrentUserId;\r\n const tastatusConfigAssignChannelToSubscribeInto = ChannelNames.Channel_StatusConfigAssign + CurrentUserId;\r\n const multiChartsSchedulingChannelToSubscribeInto = ChannelNames.Channel_MultiChartsScheduling + CurrentUserId;\r\n const assetsAssignedChannelToSubscribeInto = ChannelNames.Channel_AssetAssignment + CurrentUserId;\r\n const projectCreatedChannelToSubscribeInto = ChannelNames.Channel_NewProject + CurrentUserId;\r\n const projectAccessToMemberChannelToSubscribeInto = ChannelNames.Channel_ProjectMemberRole + CurrentUserId;\r\n const goalApprovedChannelToSubscribeInto = ChannelNames.Channel_GoalApprovedFromReplan + CurrentUserId;\r\n const userStoryUpdateChannelToSubscribeInto = ChannelNames.Channel_UserStoryUpdateNotification + CurrentUserId;\r\n const AnnouncementChannelToSubscribeInto = ChannelNames.Channel_AnnouncementNotification + CurrentUserId;\r\n const ReminderChannelToSubscribeInto = ChannelNames.Channel_ReminderNotification + CurrentUserId;\r\n const PerformanceChannelToSubscribeInto = ChannelNames.Channel_PeroformanceNotification + CurrentUserId;\r\n const userStoryCommentChannelToSubscribeInto = ChannelNames.Channel_UserStoryComment + CurrentUserId;\r\n const sprintStartedChannelToSubscribeInto = ChannelNames.Channel_SprintStarted + CurrentUserId;\r\n const sprintReplanChannelToSubscribeInto = ChannelNames.Channel_SprintRequestedToReplan + CurrentUserId;\r\n const projectFeatureChannelToSubscribeInto = ChannelNames.Channel_ProjectFeature + CurrentUserId;\r\n const userStoryArchiveChannelToSubscribeInto = ChannelNames.Channel_UserStoryArchive + CurrentUserId;\r\n const userStoryParkChannelToSubscribeInto = ChannelNames.Channel_UserStoryPark + CurrentUserId;\r\n const genericActivityNotificationChannelToSubscribeInto = ChannelNames.Channel_GenericActivityNotification + CurrentUserId;\r\n const purchaseExecutionAssignedChannelToSubscribeInto = ChannelNames.Channel_GenericActivityNotification + CurrentUserId;\r\n\r\n console.log(\"subscribing to \" + taskAssignmentChannelToSubscribeInto);\r\n console.log(\"subscribing to \" + tastatusReportSubmissionChannelToSubscribeInto);\r\n console.log(\"subscribing to \" + tastatusConfigAssignChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + assetsAssignedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectCreatedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectAccessToMemberChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + goalApprovedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryUpdateChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + AnnouncementChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryCommentChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + sprintStartedChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + sprintReplanChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + ReminderChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + PerformanceChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + projectFeatureChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryArchiveChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + userStoryParkChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + genericActivityNotificationChannelToSubscribeInto);\r\n console.log(\"subscribing to\" + purchaseExecutionAssignedChannelToSubscribeInto);\r\n\r\n\r\n this.pubnub.subscribe({\r\n channels: [taskAssignmentChannelToSubscribeInto, tastatusReportSubmissionChannelToSubscribeInto,\r\n tastatusConfigAssignChannelToSubscribeInto, multiChartsSchedulingChannelToSubscribeInto,\r\n assetsAssignedChannelToSubscribeInto, projectCreatedChannelToSubscribeInto, ,\r\n projectAccessToMemberChannelToSubscribeInto, goalApprovedChannelToSubscribeInto,\r\n userStoryUpdateChannelToSubscribeInto, AnnouncementChannelToSubscribeInto, ReminderChannelToSubscribeInto,\r\n userStoryCommentChannelToSubscribeInto, sprintStartedChannelToSubscribeInto,\r\n sprintReplanChannelToSubscribeInto,\r\n PerformanceChannelToSubscribeInto,\r\n projectFeatureChannelToSubscribeInto,\r\n userStoryArchiveChannelToSubscribeInto,\r\n userStoryParkChannelToSubscribeInto, genericActivityNotificationChannelToSubscribeInto,purchaseExecutionAssignedChannelToSubscribeInto]\r\n });\r\n var roleUpdatesChannelToSubscribeInto = ChannelNames.Channel_RoleUpdates + \"19B6F9FC-7370-4B9C-A05C-3B8D819EEEAF\";\r\n console.log(\"subscribing to \" + roleUpdatesChannelToSubscribeInto);\r\n this.pubnub.subscribe({\r\n channels: [roleUpdatesChannelToSubscribeInto]\r\n });\r\n \r\n }\r\n\r\n replaceAll(str, find, replace) {\r\n var escapedFind = find.replace(/([.*+?^=!:${}()|\\[\\]\\/\\\\])/g, \"\\\\$1\");\r\n return str.replace(new RegExp(escapedFind, 'g'), replace);\r\n }\r\n ngOnInit() {\r\n this.signalr.getNotificationsFromApi().subscribe();\r\n this.getSoftLabels();\r\n if (this.cookieService.check(LocalStorageProperties.DisplayWelComeNote) && this.cookieService.get(LocalStorageProperties.DisplayWelComeNote) == 'true') {\r\n if ((localStorage.getItem(LocalStorageProperties.UserModel) != null && localStorage.getItem(LocalStorageProperties.UserModel) != undefined)\r\n ) {\r\n this.userFullName = JSON.parse(localStorage.getItem(LocalStorageProperties.UserModel)).fullName;\r\n }\r\n var count = this.cookieService.check(LocalStorageProperties.UserLoggedInCount);\r\n if (count && this.cookieService.get(LocalStorageProperties.UserLoggedInCount) != 'null'\r\n && this.cookieService.get(LocalStorageProperties.UserLoggedInCount) != 'undefined') {\r\n this.loggedInCount = this.cookieService.get(LocalStorageProperties.UserLoggedInCount);\r\n if (this.loggedInCount == '1' || this.loggedInCount == '2') {\r\n this.displayWelcomeNote = true;\r\n setTimeout(() => {\r\n this.displayWelcomeNote = false;\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.DisplayWelComeNote, 'false', null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n }, 8000);\r\n }\r\n }\r\n }\r\n let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);\r\n const companylan = JSON.parse(this.cookieService.get(LocalStorageProperties.CompanyDetails));\r\n let currentCulturelan = companylan.lanCode;\r\n\r\n if (currentCulture == '' || currentCulture == null || currentCulture == undefined || currentCulture === 'null' || currentCulture === 'undefined') {\r\n if (currentCulturelan == '' || currentCulturelan == null || currentCulturelan == undefined || currentCulturelan === 'null' || currentCulturelan === 'undefined') {\r\n currentCulture = 'en';\r\n }\r\n else {\r\n currentCulture = currentCulturelan;\r\n }\r\n }\r\n this.currentLang = currentCulture;\r\n super.ngOnInit();\r\n this.loadingInProgress$ = this.store.pipe(select(sharedModuleReducers.isTimeSheetFetching));\r\n this.timeSheetButtonDetails$ = this.store.pipe(select(sharedModuleReducers.getTimeShettButtonDetails));\r\n this.timeSheetButtonDetails$\r\n .subscribe(data => {\r\n this.timesheetDisableorEnable = data;\r\n })\r\n //this.getTimeSheetButtons();\r\n //this.getUserStore();\r\n this.showTrailPeriod = false;\r\n this.egretThemes = this.themeService.egretThemes;\r\n this.layoutConf = this.layout.layoutConf;\r\n\r\n // this.themeModel$ = this.store.pipe(select(sharedModuleReducers.getThemeModel));\r\n //this.store.dispatch(new InitializeAfterLoginData());\r\n var user = JSON.parse(localStorage.getItem(LocalStorageProperties.UserModel));\r\n if (user != null) {\r\n this.monitorCompanyrelatedDetails(user);\r\n }\r\n this.loggedInUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n this.getEmployeeIdByUserId();\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.applicationVersion = environment.version;\r\n this.menuType = \"Main\";\r\n this.selectedLangName = this.availableLangs.find(x => x.code == this.currentLang).name;\r\n this.userStoreId$ = this.store.pipe(select(sharedModuleReducers.getUserStoreId));\r\n this.userStoreId$.subscribe(result => {\r\n this.userStoreId = result;\r\n })\r\n }\r\n\r\n showHideDeleteButton(data) {\r\n this.showDeleteIcon = data.isDemoDataCleared ? false : data.isToShowDeleteIcon;\r\n }\r\n\r\n monitorCompanyrelatedDetails(user) {\r\n this.authenticatedUserRecord = user;\r\n this.showHideDeleteButton(user);\r\n this.companiesList = user.companiesList;\r\n this.getCompanyDetails(user.companyId);\r\n var company = this.companiesList.filter(x => x.companyId.toLowerCase() == this.cookieService.get(LocalStorageProperties.CompanyId).toLowerCase())\r\n this.selectedCompany = company ? company[0] : null;\r\n this.selectedCompanyName = company ? company[0] ? company[0].companyName : null : null;\r\n }\r\n\r\n navigateToDashboards() {\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n this.defaultDashboardId = this.cookieService.check(LocalStorageProperties.DefaultDashboard) ? JSON.parse(this.cookieService.get(LocalStorageProperties.DefaultDashboard)) : null;\r\n if (this.defaultDashboardId && userReference != \"null\" && userReference != null) {\r\n this.router.navigateByUrl(\"dashboard-management/dashboard/\" + this.defaultDashboardId + \"/form/\" + userReference);\r\n } else if (this.defaultDashboardId) {\r\n this.router.navigateByUrl(\"dashboard-management/dashboard/\" + this.defaultDashboardId);\r\n }\r\n }\r\n\r\n isOpened(event) {\r\n this.opened.emit(event);\r\n }\r\n\r\n getSoftLabels() {\r\n this.softLabels = JSON.parse(localStorage.getItem('SoftLabels'));\r\n }\r\n\r\n async onSignout() {\r\n this.reload = false;\r\n const CurrentUserId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n const taskAssignmentChannelToSubscribeInto = ChannelNames.Channel_TaskAssignments\r\n + this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n const tastatusReportSubmissionChannelToSubscribeInto = ChannelNames.Channel_StatusReportSubmission\r\n + this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n const tastatusConfigAssignChannelToSubscribeInto = ChannelNames.Channel_StatusConfigAssign\r\n + this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n const multiChartsSchedulingChannelToSubscribeInto = ChannelNames.Channel_MultiChartsScheduling + CurrentUserId;\r\n const assetsAssignedChannelToSubscribeInto = ChannelNames.Channel_AssetAssignment + CurrentUserId;\r\n const projectCreatedChannelToSubscribeInto = ChannelNames.Channel_NewProject + CurrentUserId;\r\n const projectAccessToMemberChannelToSubscribeInto = ChannelNames.Channel_ProjectMemberRole + CurrentUserId;\r\n const goalApprovedChannelToSubscribeInto = ChannelNames.Channel_GoalApprovedFromReplan + CurrentUserId;\r\n const userStoryUpdateChannelToSubscribeInto = ChannelNames.Channel_UserStoryUpdateNotification + CurrentUserId;\r\n const AnnouncementChannelToSubscribeInto = ChannelNames.Channel_AnnouncementNotification + CurrentUserId;\r\n const userStoryCommentChannelToSubscribeInto = ChannelNames.Channel_UserStoryComment + CurrentUserId;\r\n const sprintStartedChannelToSubscribeInto = ChannelNames.Channel_SprintStarted + CurrentUserId;\r\n const sprintReplanChannelToSubscribeInto = ChannelNames.Channel_SprintRequestedToReplan + CurrentUserId;\r\n const PerformanceChannelToSubscribeInto = ChannelNames.Channel_PeroformanceNotification + CurrentUserId;\r\n const ReminderChannelToSubscribeInto = ChannelNames.Channel_ReminderNotification + CurrentUserId;\r\n const projectFeatureChannelToSubscribeInto = ChannelNames.Channel_ProjectFeature + CurrentUserId;\r\n const userStoryArchiveChannelToSubscribeInto = ChannelNames.Channel_UserStoryArchive + CurrentUserId;\r\n const userStoryParkChannelToSubscribeInto = ChannelNames.Channel_UserStoryPark + CurrentUserId;\r\n const genericActivityNotificationChannelToSubscribeInto = ChannelNames.Channel_GenericActivityNotification + CurrentUserId;\r\n const purchaseExecutionAssignedChannelToSubscribeInto = ChannelNames.Channel_PurchaseExecutionAssignToEmployeeNotification + CurrentUserId;\r\n\r\n this.pubnub.unsubscribe({ channels: [taskAssignmentChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [tastatusReportSubmissionChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [tastatusConfigAssignChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [multiChartsSchedulingChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [assetsAssignedChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [projectCreatedChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [projectAccessToMemberChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [goalApprovedChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [userStoryUpdateChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [AnnouncementChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [userStoryCommentChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [sprintStartedChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [sprintReplanChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [PerformanceChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [ReminderChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [projectFeatureChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [userStoryArchiveChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [userStoryParkChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [purchaseExecutionAssignedChannelToSubscribeInto] });\r\n this.pubnub.unsubscribe({ channels: [this.loginUserchannelName] });\r\n // var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n // var presenceChannel = \"MessengerPresence-\" + loginCompanyId;\r\n // this.pubnub.unsubscribe({\r\n // channels: [presenceChannel],\r\n // });\r\n // if (this.channelList != undefined || this.channelList != null) {\r\n // for (var index = 0; index < this.channelList.length; index++) {\r\n // this.pubnub.unsubscribe({\r\n // channels: [(loginCompanyId + '-' + this.channelList[index].id)]\r\n // });\r\n // }\r\n // }\r\n // this.pubnub.unsubscribe({\r\n // channels: [('ChannelUpdates-' + loginCompanyId)]\r\n // });\r\n // this.pubnub.unsubscribe({\r\n // channels: [('UserUpdates-' + loginCompanyId)]\r\n // });\r\n this.pubnub.unsubscribe({ channels: [genericActivityNotificationChannelToSubscribeInto] });\r\n // this.pubnub.unsubscribeAll();\r\n // this.pubnub.removeAllListeners();\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let companyName = this.cookieService.get(LocalStorageProperties.CompanyDetails);\r\n let companyId = this.cookieService.get(LocalStorageProperties.CompanyId);\r\n\r\n let companyDetails = this.cookieService.get(LocalStorageProperties.CompanyDetails);\r\n let companyTheme = this.cookieService.get(LocalStorageProperties.CompanyTheme);\r\n let UserLoggedInCount = this.cookieService.get(LocalStorageProperties.UserLoggedInCount);\r\n let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);\r\n this.cookieService.deleteAll(environment.cookiePath);\r\n this.cookieService.delete(\"selectedProjectsTab\");\r\n\r\n\r\n this.cookieService.set(LocalStorageProperties.UserLoggedInCount, UserLoggedInCount, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CurrentCulture, currentCulture, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CurrentUser, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CurrentUserId, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyName, companyName, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyId, companyId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.DefaultDashboard, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyDetails, companyDetails, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyTheme, companyTheme, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.SearchClick, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.UserModel, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.EnableTeamDashboard, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n localStorage.setItem(LocalStorageProperties.Dashboards, null);\r\n localStorage.setItem(LocalStorageProperties.UserReferenceId, null);\r\n localStorage.setItem(LocalStorageProperties.RoleFeatures, null);\r\n localStorage.removeItem(LocalStorageProperties.UserRoleFeatures);\r\n localStorage.removeItem(LocalStorageProperties.RedirectionUrl);\r\n localStorage.removeItem(LocalStorageProperties.SideBarMenuItems);\r\n localStorage.removeItem(LocalStorageProperties.IntroModules);\r\n this.cookieService.set(LocalStorageProperties.AddOrEditCustomAppIsRequired, null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n\r\n this.router.navigate([\"/sessions/signin\"]);\r\n return false;\r\n }\r\n\r\n setLang() {\r\n this.translate.use(this.currentLang);\r\n console.log(this.window.location.hostname);\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentCulture, this.currentLang, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.selectedLangName = this.availableLangs.find(x => x.code == this.currentLang).name;\r\n }\r\n\r\n changeTheme(theme) {\r\n this.themeService.changeTheme(theme);\r\n }\r\n\r\n toggleNotific() {\r\n // this.getUnreadNotifications();\r\n }\r\n\r\n toggleRecording() {\r\n this.getActTrackerRecorder();\r\n var user = JSON.parse(localStorage.getItem(LocalStorageProperties.UserModel));\r\n if (user != null) {\r\n this.monitorCompanyrelatedDetails(user);\r\n }\r\n }\r\n\r\n getNotifications() {\r\n const notificationSearchModel = new AppNotification();\r\n this.store.dispatch(new ClearAllUnreadNotificationsTriggered(notificationSearchModel));\r\n this.unreadCountOfNotifications$ = this.store.pipe(select(sharedModuleReducers.getNotificationUnreadTotal));\r\n }\r\n\r\n getUnreadNotifications() {\r\n const notificationSearchModel = new AppNotification();\r\n this.store.dispatch(new ClearUnreadNotificationsTriggered(notificationSearchModel));\r\n this.unreadCountOfNotifications$ = this.store.pipe(select(sharedModuleReducers.getNotificationUnreadTotal));\r\n }\r\n\r\n getActTrackerRecorder() {\r\n this.commonService.getActTrackerRecorder().subscribe((response: any) => {\r\n if (response.success) {\r\n this.isRecording = response.data;\r\n }\r\n });\r\n }\r\n\r\n clearDemoData() {\r\n const dialogRef = this.dialog.open(ConfirmationDialogComponent, {\r\n height: \"30%\",\r\n width: \"30%\",\r\n hasBackdrop: true,\r\n direction: \"ltr\",\r\n data: {},\r\n disableClose: true\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n console.log(\"The dialog was closed\");\r\n });\r\n }\r\n\r\n\r\n exportConfigurationDialogData() {\r\n const dialogRef = this.dialog.open(ExportConfigurationDialogComponent, {\r\n height: \"45%\",\r\n width: \"40%\",\r\n hasBackdrop: true,\r\n direction: \"ltr\",\r\n data: {},\r\n disableClose: true\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n console.log(\"The dialog was closed\");\r\n });\r\n }\r\n\r\n toggleSidenav() {\r\n if (this.layoutConf.sidebarStyle === \"closed\") {\r\n return this.layout.publishLayoutChange({\r\n sidebarStyle: \"full\"\r\n });\r\n }\r\n this.layout.publishLayoutChange({\r\n sidebarStyle: \"closed\"\r\n });\r\n setTimeout(() => { window.dispatchEvent(new Event(\"resize\")); }, 250);\r\n }\r\n\r\n toggleCollapse() {\r\n // compact --> full\r\n if (this.layoutConf.sidebarStyle === \"compact\") {\r\n return this.layout.publishLayoutChange(\r\n {\r\n sidebarStyle: \"full\"\r\n },\r\n { transitionClass: true }\r\n );\r\n }\r\n\r\n // * --> compact\r\n this.layout.publishLayoutChange(\r\n {\r\n sidebarStyle: \"compact\"\r\n },\r\n { transitionClass: true }\r\n );\r\n }\r\n\r\n public getTimeSheetButtons() {\r\n //this.loadingInProgress = true;\r\n // this.commonService.getTimeSheetEnabledInformation().pipe(takeUntil(this.ngDestroyed$))\r\n // .subscribe((data: any) => {\r\n // if (data === \"\" || data === undefined) {\r\n // return;\r\n // }\r\n // this.timesheetDisableorEnable = JSON.parse(data);\r\n // this.loadingInProgress = false;\r\n // });\r\n this.store.dispatch(new FetchTimeSheetButtonDetails());\r\n }\r\n\r\n closeFeedTimeSheet() {\r\n this.feedTimeSheetPopover.close();\r\n this.isFeedTimeSheet = false;\r\n }\r\n\r\n openTimeSheet() {\r\n const projectDialog = this.dialog.open(FeedTimeDialogComponent, {\r\n minWidth: '30vw',\r\n height: '35vh',\r\n data: !this.isFeedTimeSheet\r\n //disableClose: true\r\n });\r\n projectDialog.afterClosed().subscribe(() => {\r\n this.closeFeedTimeSheet();\r\n });\r\n this.getTimeSheetButtons();\r\n // this.isFeedTimeSheet = !this.isFeedTimeSheet;\r\n }\r\n\r\n // getAllMenuItems() {\r\n // this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));\r\n // }\r\n\r\n changeMenuType(type) {\r\n this.menuType = type;\r\n }\r\n\r\n openFeedBackDialog() {\r\n this.isFeedBackDialog = true;\r\n }\r\n\r\n closeFeedBacklogDialog() {\r\n this.isFeedBackDialog = false;\r\n this.feedBackPopOver.close();\r\n }\r\n\r\n getCompanyDetails(companyId: string) {\r\n if (this.cookieService.check(LocalStorageProperties.CompanyDetails) && this.cookieService.check(LocalStorageProperties.CompanyId)) {\r\n this.company = JSON.parse(this.cookieService.get(LocalStorageProperties.CompanyDetails));\r\n }\r\n if (!this.company) {\r\n this.commonService.getCompanyById(companyId).subscribe((response: any) => {\r\n this.company = response.data;\r\n\r\n if (this.company.isRemoteAccess == 1 && this.company.trailDays > 0) {\r\n this.showTrailPeriod = true;\r\n // this.noOfDays=this.company.noOfDays;\r\n }\r\n if (this.company.isDemoData == true) {\r\n this.showDelete = true;\r\n } else {\r\n this.showDelete = false;\r\n }\r\n if (this.company.isDemoData == false || this.company.isDemoData == null) {\r\n this.showDelete = false;\r\n }\r\n if (this.company != null && this.company != undefined && this.company.industryId.toUpperCase() == '7499F5E3-0EF2-4044-B840-2411B68302F9')\r\n this.isStoreAccess = false;\r\n else\r\n this.isStoreAccess = true;\r\n });\r\n }\r\n else {\r\n if (this.company.isRemoteAccess == 1 && this.company.trailDays > 0) {\r\n this.showTrailPeriod = true;\r\n // this.noOfDays=this.company.noOfDays;\r\n }\r\n if (this.company.isDemoData == true) {\r\n this.showDelete = true;\r\n }\r\n if (this.company.isDemoData == false || this.company.isDemoData == null) {\r\n this.showDelete = false;\r\n }\r\n if (this.company != null && this.company != undefined && this.company.industryId.toUpperCase() == '7499F5E3-0EF2-4044-B840-2411B68302F9')\r\n this.isStoreAccess = false;\r\n else\r\n this.isStoreAccess = true;\r\n }\r\n }\r\n\r\n getUserStore() {\r\n let storeSearchModel = new StoreSearchModel();\r\n storeSearchModel.isArchived = false;\r\n storeSearchModel.isDefault = true;\r\n storeSearchModel.isCompany = false;\r\n this.store.dispatch(new GetUserStoreIdTriggered(storeSearchModel));\r\n }\r\n\r\n goToUserStore() {\r\n if (this.cookieService.get(LocalStorageProperties.CurrentUserId))\r\n this.router.navigate([\"document/store\", this.userStoreId, this.cookieService.get(LocalStorageProperties.CurrentUserId).toLowerCase()]);\r\n }\r\n\r\n selectAfterlogin(e) {\r\n this.companyId = e.companyId\r\n this.selectedCompanyName = e.companyName;\r\n this.selectedCompany = e;\r\n }\r\n\r\n async selectCompany(e) {\r\n if (this.cookieService.get(LocalStorageProperties.CompanyId).toLowerCase() != e.companyId.toString().toLowerCase()) {\r\n this.reload = false;\r\n console.log(e);\r\n this.companyId = e.companyId;\r\n this.selectedCompanyName = e.companyName;\r\n this.selectedCompany = e;\r\n this.loading = true;\r\n this.searchText = null;\r\n this.ngxService.start();\r\n this.authService.companyLogin(this.selectedCompany).subscribe(async (userToken: any) => {\r\n if (userToken.success) {\r\n await this.onSignout();\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentUser, e.authToken, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CurrentUserId, e.userId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CurrentUser, userToken.data.authToken, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(\"DefaultDashboard\", userToken.data.defaultDashboardId ? JSON.stringify(userToken.data.defaultDashboardId.workspaceId) : null, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set('CompanyDetails', JSON.stringify(userToken.data.companyDetails));\r\n this.cookieService.set('CompaniesList', JSON.stringify(userToken.data.usersModel.companiesList)),\r\n localStorage.setItem('RoleFeatures', JSON.stringify(userToken.data.roleFeatures));\r\n localStorage.setItem(\"UserModel\", JSON.stringify(userToken.data.usersModel));\r\n localStorage.setItem('SoftLabels', JSON.stringify(userToken.data.softLabels));\r\n localStorage.setItem(\"CompanySettings\", JSON.stringify(userToken.data.companySettings));\r\n localStorage.setItem(\"FromLogIn\", JSON.stringify(true));\r\n this.cookieService.set(LocalStorageProperties.CompanyName, userToken.data.usersModel.companyName, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.cookieService.set(LocalStorageProperties.CompanyId, userToken.data.usersModel.companyId, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n //this.store.dispatch(new UserDetailsFetchedAfterCompanyLogin(userToken.data.usersModel));\r\n this.setDafaultLanguage();\r\n }\r\n this.loading = false;\r\n this.ngxService.stop();\r\n });\r\n }\r\n }\r\n\r\n setDafaultLanguage() {\r\n const company = JSON.parse(this.cookieService.get(LocalStorageProperties.CompanyDetails));\r\n let currentCulture = company.lanCode;\r\n if (currentCulture == null || currentCulture == undefined || currentCulture === 'null' || currentCulture === 'undefined') {\r\n currentCulture = 'en';\r\n }\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.cookieService.set(LocalStorageProperties.CurrentCulture, currentCulture, null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n this.currentLang = currentCulture;\r\n this.translate.use(this.currentLang);\r\n }\r\n\r\n\r\n getEmployeeIdByUserId() {\r\n\r\n }\r\n\r\n navigateToProfile() {\r\n this.commonService.getUserById(this.cookieService.get(LocalStorageProperties.CurrentUserId).toLowerCase()).subscribe((response: any) => {\r\n if (response.success == true) {\r\n this.employeeId = response.data.employeeId;\r\n if (this.employeeId) {\r\n this.router.navigate([\"dashboard/profile\", this.cookieService.get(LocalStorageProperties.CurrentUserId).toLowerCase(), \"overview\"]);\r\n }\r\n else {\r\n this.router.navigate([\"dashboard/myProfile\", this.cookieService.get(LocalStorageProperties.CurrentUserId).toLowerCase()]);\r\n }\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n navigateToMessenger() {\r\n this.router.navigate([\"/chat\"]);\r\n }\r\n\r\n\r\n navigateToStatusReport() {\r\n const projectDialog = this.dialog.open(WorkItemsDialogComponent, {\r\n minWidth: '82vw',\r\n height: '82vh',\r\n data: { dashboardFilters: this.dashboardFilters },\r\n disableClose: true\r\n });\r\n projectDialog.afterClosed().subscribe(() => { });\r\n }\r\n navigateToSettings() {\r\n this.router.navigate([\"/settings\"]);\r\n }\r\n\r\n alternateSignIn() {\r\n this.router.navigate([\"/sessions/generic-signin\"]);\r\n }\r\n\r\n navigateToRoles() {\r\n this.router.navigate([\"/rolemanagement/rolemanagement\"]);\r\n }\r\n\r\n navigateToUrl(workspaceId) {\r\n const userReference = localStorage.getItem(LocalStorageProperties.UserReferenceId);\r\n if (userReference != \"null\" && userReference != null) {\r\n this.router.navigateByUrl(\"dashboard-management/dashboard/\" + workspaceId + \"/form/\" + userReference);\r\n } else {\r\n this.router.navigateByUrl(\"dashboard-management/dashboard/\" + workspaceId);\r\n }\r\n }\r\n\r\n addUploadFilePopupOpen(fileUploadDropzonePopup) {\r\n fileUploadDropzonePopup.openPopover();\r\n }\r\n setLabelNameForDropzone(fileName) {\r\n return fileName.substring(0, 20) + \"...\";\r\n }\r\n onRemove(event) {\r\n this.files.splice(this.files.indexOf(event), 1);\r\n if (this.files.length > 0) {\r\n this.filesPresent = true;\r\n } else {\r\n this.filesPresent = false;\r\n }\r\n }\r\n removeAllFiles() {\r\n this.filesPresent = false;\r\n this.files = [];\r\n }\r\n filesSelected(event) {\r\n this.files.push(...event.addedFiles);\r\n if (this.files.length > 0) {\r\n this.filesPresent = true;\r\n }\r\n }\r\n\r\n closeUploadFilePopup() {\r\n this.fileUploadDropzonePopup.forEach((p) => p.closePopover());\r\n this.files = [];\r\n this.fileResultModel = [];\r\n }\r\n saveFiles() {\r\n this.anyOperationInProgress = true;\r\n const formData = new FormData();\r\n this.files.forEach((file: File) => {\r\n this.fileIndex = this.fileIndex + 1;\r\n const fileKeyName = \"file\" + this.fileIndex.toString();\r\n formData.append(fileKeyName, file);\r\n });\r\n\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n this.UploaderOnInit(environment.apiURL + ApiUrls.UploadFileChunks);\r\n }\r\n private UploaderOnInit(url: string): void {\r\n let progress = 0;\r\n const r = new Resumable({\r\n target: url,\r\n chunkSize: 1 * 1024 * 1024, //3 MB\r\n query: { moduleTypeId: this.moduleTypeId },\r\n headers: {\r\n \"Authorization\": `Bearer ${this.cookieService.get(LocalStorageProperties.CurrentUser)}`\r\n },\r\n });\r\n r.addFiles(this.files);\r\n r.on('fileAdded', (file, event) => {\r\n if (!this.fileResultModel || this.fileResultModel.length > 0) {\r\n this.fileResultModel = [];\r\n this.cdRef.detectChanges();\r\n }\r\n r.upload()\r\n });\r\n r.on('complete', (event) => {\r\n r.files.pop();\r\n this.progressValue = 0;\r\n this.filesPresent = false;\r\n this.uploadedFileNames = [];\r\n this.fileCounter = 1;\r\n this.fileIndex = 0;\r\n this.anyOperationInProgress = false;\r\n });\r\n r.on('progress', () => {\r\n progress = Math.round(r.progress() * 100);\r\n this.progressValue = progress;\r\n this.cdRef.detectChanges();\r\n });\r\n r.on('fileSuccess', (file, response) => {\r\n if (file && file.fileName) {\r\n if (!this.uploadedFileNames.find(x => x == file.fileName)) {\r\n this.uploadedFileNames.push(file.fileName)\r\n this.fileCounter = this.uploadedFileNames.length;\r\n\r\n let result = JSON.parse(response);\r\n if (result && result.length > 0) {\r\n if (!this.fileResultModel) {\r\n this.fileResultModel = [];\r\n }\r\n let fileResult = new FileResultModel();\r\n fileResult.fileExtension = result[0].FileExtension;\r\n fileResult.fileName = result[0].FileName;\r\n fileResult.filePath = result[0].FilePath;\r\n fileResult.fileSize = result[0].FileSize;\r\n this.fileResultModel.push(fileResult);\r\n if (result[0].FilePath != null && result[0].FilePath != \"\")\r\n this.importDynamicJson(result[0].FilePath);\r\n else\r\n this.closeUploadFilePopup();\r\n }\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n });\r\n }\r\n\r\n importDynamicJson(configuredJsonURL) {\r\n var importConfigurationModel = new ImportConfigurationModel();\r\n importConfigurationModel.configurationUrl = configuredJsonURL;\r\n this.importingInProgress = true;\r\n this.commonService.SystemImportConfiguration(importConfigurationModel).subscribe((response: any) => {\r\n if (response.success === true) {\r\n this.closeUploadFilePopup();\r\n this.toastr.success(\"Data imported successfully\");\r\n }\r\n else {\r\n this.toastr.error(response.apiResponseMessages[0].message);\r\n }\r\n this.importingInProgress = false;\r\n });\r\n }\r\n\r\n closeSearch() {\r\n this.searchText = null;\r\n }\r\n\r\n searchCompanies(companies, search) {\r\n if (search == null || search == '') {\r\n return companies;\r\n } else if (search != null) {\r\n search = search.toLowerCase();\r\n search = search.trim();\r\n const temp = companies.filter(data =>\r\n data.companyName.toString().toLowerCase().indexOf(search) > -1\r\n )\r\n return temp;\r\n }\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n // this.pubnub.unsubscribe({ channels: [this.loginUserchannelName] });\r\n // var loginCompanyId = this.cookieService.get(\"CompanyId\");\r\n // if (this.channelList != undefined || this.channelList != null) {\r\n // for (var index = 0; index < this.channelList.length; index++) {\r\n // this.pubnub.unsubscribe({\r\n // channels: [(loginCompanyId + '-' + this.channelList[index].id)]\r\n // });\r\n // }\r\n // }\r\n // this.pubnub.unsubscribe({\r\n // channels: [('ChannelUpdates-' + loginCompanyId)]\r\n // });\r\n // this.pubnub.unsubscribe({\r\n // channels: [('UserUpdates-' + loginCompanyId)]\r\n // });\r\n this.ngDestroyed$.next();\r\n this.ngDestroyed$.complete();\r\n }\r\n onNavigateToBillingScreen() {\r\n this.router.navigate([\"/shell/Accounts\"]);\r\n }\r\n\r\n onNavigateToPricingScreen() {\r\n this.router.navigate([\"/shell/payments-plans\"]);\r\n }\r\n getIntroDetails() {\r\n var intro = new IntroModel();\r\n intro.userId = this.cookieService.get(LocalStorageProperties.CurrentUserId);\r\n this.commonService.getIntroDetails(intro).subscribe((responseData: any) => {\r\n if (responseData.success == false) {\r\n this.validationMessage = responseData.apiResponseMessages[0].message;\r\n this.anyOperationInProgress = false;\r\n this.toastr.error(this.validationMessage);\r\n }\r\n else if (responseData.success == true) {\r\n let intro = JSON.parse(localStorage.getItem(LocalStorageProperties.IntroModules));\r\n if(!intro)\r\n localStorage.setItem(LocalStorageProperties.IntroModules, JSON.stringify(responseData.data));\r\n }\r\n });\r\n }\r\n\r\n getTeamMembers() {\r\n var teamMemberModel;\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n var teamMemberModel;\r\n teamMemberModel = {\r\n isForTracker: true\r\n }\r\n teamMemberModel.isArchived = false;\r\n this.commonService.getTeamLeadsList(teamMemberModel).subscribe((responseData: any) => {\r\n let employeesDropDown = responseData.data;\r\n if (employeesDropDown && employeesDropDown.length > 1) {\r\n this.cookieService.set(LocalStorageProperties.EnableTeamDashboard, 'true', null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n }\r\n else {\r\n this.cookieService.set(LocalStorageProperties.EnableTeamDashboard, 'false', null, environment.cookiePath, this.window.location.hostname, false, \"Strict\");\r\n }\r\n })\r\n }\r\n}\r\n","<mat-toolbar class=\"topbar remove-padding\">\r\n <div fxFlex>\r\n <app-menu [reload]=\"reload\" (isOpened)=\"isOpened($event)\" (openNewDashboard)=\"navigateToUrl($event)\"></app-menu>\r\n </div>\r\n <div fxFlex fxLayout=\"row\" fxHide.xs fxLayoutAlign=\"center\" style=\"vertical-align: center;\">\r\n </div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"end center\">\r\n <div *ngIf=\"companiesList != null && companiesList.length > 1\" class=\"filter-data custom-box language-section\"\r\n style=\"width:150px;\" (click)=\"$event.stopPropagation()\">\r\n <mat-select placeholder=\"\" name=\"selectedCompany\" [(ngModel)]=\"selectedCompany\"\r\n (selectionChange)=\"selectCompany($event.value)\">\r\n <mat-select-trigger>\r\n <div *ngIf=\"selectedCompany\" fxLayout=\"row\" fxLayoutGap=\"15px\">\r\n <div [ngStyle]=\"{ 'margin-bottom': selectedCompany.companyMiniLogo ? '10px' : '0px' }\">\r\n <app-avatar [name]=\"selectedCompany.companyName | removeSpecialCharacters\"\r\n fxLayoutAlign=\"start center\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ selectedCompany.companyName }}\"\r\n [src]=\"selectedCompany.companyMiniLogo | fetchSizedAndCachedImage: '20':''\"\r\n [isRound]=\"true\" size=\"20\">\r\n </app-avatar>\r\n </div>\r\n <span matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{selectedCompany.companyName}}\" matTooltipShowDelay=\"400\"\r\n fxFlex=\"calc(100% - 40px)\" class=\"language-display\" style=\"color: black !important;\">{{ selectedCompanyName }}</span>\r\n </div>\r\n </mat-select-trigger>\r\n <div fxFlex class=\"search_goalinput ml-1\" fxLayoutAlign=\"start center\"\r\n style=\"position: sticky; top: 0; z-index: 1; background-color: white;\">\r\n <div fxLayoutAlign=\"start center\">\r\n <mat-form-field class=\"full-width\">\r\n <input class=\"search_goal\" matInput placeholder=\"{{'HRMANAGAMENT.SEARCH' | translate}}\"\r\n [(ngModel)]=\"searchText\" autocomplete=\"off\">\r\n <!-- (input)=\"search($event)\"> -->\r\n </mat-form-field>\r\n </div>\r\n <span class=\"close_icon masterdata-search-close\" fxLayoutAlign=\"end center\">\r\n <span *ngIf=\"!searchText\"></span>\r\n <mat-icon *ngIf=\"searchText\" class=\"icon-button mr-05 mt-05\" aria-hidden=\"false\"\r\n (click)=\"closeSearch()\" style=\"cursor:pointer\">\r\n close</mat-icon>\r\n </span>\r\n </div>\r\n <mat-option *ngFor=\"let companyList of searchCompanies(companiesList, searchText)\" [value]=\"companyList\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{companyList.companyName}}\" matTooltipShowDelay=\"400\">\r\n <div class=\"cursor-pointer\" fxLayout=\"row\">\r\n <app-avatar [name]=\"companyList.companyName | removeSpecialCharacters\"\r\n [ngStyle]=\"{ 'margin-bottom': companyList.companyMiniLogo ? '10px' : '0px' }\"\r\n fxLayoutAlign=\"start center\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ companyList.companyName }}\"\r\n [src]=\"companyList.companyMiniLogo | fetchSizedAndCachedImage: '20':''\" [isRound]=\"true\"\r\n size=\"20\">\r\n </app-avatar>\r\n <div class=\"ml-05\">\r\n {{ companyList.companyName }}\r\n </div>\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n </div>\r\n <!-- <div *ngIf=\"showTrailPeriod\">\r\n <span>{{ 'SHELL.FREETRAILEXPIRE' | translate }}<span [(ngModel)]=\"noOfDays\">{{company.trailDays}}</span>\r\n {{ 'SHELL.DAYS' | translate }}</span>\r\n </div> -->\r\n <!-- <div class=\"home\">\r\n <button mat-icon-button [style.overflow]=\"'visible'\" matTooltip=\"{{ 'SHELL.HOME' | translate}}\"\r\n class=\"topbar-button-right\" (click)=\"changeMenuType('WorkspaceMenuItems');navigateToDashboards()\"\r\n [ngClass]=\"(menuType == 'WorkspaceMenuItems'|| this.router.url.includes('/dashboard-management')) ? 'icon_active_class' : ''\">\r\n <mat-icon>home</mat-icon>\r\n </button>\r\n </div> -->\r\n <!-- <div class=\"home\" *ngIf=\"canAccess_feature_ViewRoles\">\r\n <button mat-icon-button [style.overflow]=\"'visible'\" matTooltip=\"{{ 'ROLESVIEW.ROLES' | translate}}\"\r\n class=\"topbar-button-right\" (click)=\"changeMenuType('WorkspaceMenuItems');navigateToRoles()\"\r\n [ngClass]=\"(menuType == 'WorkspaceMenuItems'|| this.router.url.includes('/rolemanagement/rolemanagement')) ? 'icon_active_class' : ''\">\r\n <mat-icon>brightness_high</mat-icon>\r\n </button>\r\n </div> -->\r\n <div *ngIf=\"(canAccess_feature_Settings) || (canAccess_feature_ViewRoles)\">\r\n <button matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.SETTINGS' | translate }}\" class=\"topbar-button-right theme-navbar-icon-color\" mat-icon-button\r\n (click)=\"navigateToSettings()\"\r\n [ngClass]=\"(this.router.url.includes('/settings')) ? 'icon_active_class' : ''\">\r\n <mat-icon>settings</mat-icon>\r\n </button>\r\n </div>\r\n <!-- <div *ngIf=\"canAccess_feature_AbilityToChat\">\r\n <button mat-icon-button [style.overflow]=\"'visible'\" matTooltip=\"{{ 'SHELL.CHAT' | translate }}\"\r\n class=\"topbar-button-right\" (click)=\"navigateToMessenger()\"\r\n [ngClass]=\"(this.router.url.includes('/chat')) ? 'icon_active_class' : ''\">\r\n <mat-icon matBadge=\"{{messagesUnreadCount}}\" [matBadgeHidden]=\"messagesUnreadCount == 0\"\r\n matBadgeColor=\"warn\" class=\"m-0 icon\">forum</mat-icon>\r\n </button>\r\n </div> -->\r\n\r\n <div *ngIf=\"canAccess_feature_MyProjectWork\">\r\n <button matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.MYWORK' | translate }}\" class=\"topbar-button-right theme-navbar-icon-color\" mat-icon-button\r\n (click)=\"navigateToStatusReport()\">\r\n <mat-icon>assignment</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"(canAccess_feature_PunchCard) && !( timesheetDisableorEnable && timesheetDisableorEnable.TimeSheetRestricted)\">\r\n <button mat-icon-button id=\"feedTimeSheetComponent\" [style.overflow]=\"'visible'\"\r\n matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.LOGTIME' | translate}}\" [satPopoverAnchorFor]=\"feedTimeSheet\"\r\n (click)=\"openTimeSheet()\" class=\"topbar-button-right theme-navbar-icon-color\">\r\n <mat-icon>access_time</mat-icon>\r\n </button>\r\n </div>\r\n <!-- Notification toggle button -->\r\n <button mat-icon-button matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.NOTIFICATIONS' | translate}}\" (click)=\"toggleNotific()\"\r\n [style.overflow]=\"'visible'\" *ngIf=\"newNotificationsCount != 0\" class=\"topbar-button-right theme-navbar-icon-color\"\r\n [matMenuTriggerFor]=\"notification\">\r\n <mat-icon>notifications</mat-icon>\r\n <span *ngIf=\"newNotificationsCount != 0\" class=\"notification-number mat-bg-warn\">{{\r\n newNotificationsCount }}</span>\r\n </button>\r\n <mat-menu #notification=\"matMenu\">\r\n <app-notifications></app-notifications>\r\n </mat-menu>\r\n\r\n <!-- Top left user menu -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"accountMenu\" (click)=\"toggleRecording()\"\r\n [ngClass]=\"this.router.url.includes('/dashboard/profile/') ? 'icon_active_class' : ''\"\r\n class=\"topbar-button-right img-button\" *ngIf=\"authenticatedUserRecord\">\r\n <img class=\"icon-highlight-setter\" *ngIf=\"authenticatedUserRecord.profileImage\"\r\n [src]=\"authenticatedUserRecord.profileImage | fetchSizedAndCachedImage: '60':''\" alt=\"profile image\" />\r\n <div *ngIf=\"!authenticatedUserRecord.profileImage\" style=\"margin-left: 4px !important;\">\r\n <app-avatar [name]=\"authenticatedUserRecord.fullName | removeSpecialCharacters\" [isRound]=\"true\" size=\"30\">\r\n </app-avatar>\r\n </div>\r\n </button>\r\n\r\n <sat-popover #feedTimeSheet [autoFocus]=\"false\" hasBackdrop [restoreFocus]=\"false\" [interactiveClose]=\"true\"\r\n scrollStrategy=\"reposition\" verticalAlign=\"below\" horizontalAlign=\"before\">\r\n <app-feed-time (closeFeedTimeSheetPopup)=\"closeFeedTimeSheet()\" [isFeedTimeSheet]=\"isFeedTimeSheet\">\r\n </app-feed-time>\r\n </sat-popover>\r\n\r\n <mat-menu #accountMenu=\"matMenu\">\r\n <button mat-menu-item (click)=\"navigateToProfile()\">\r\n <mat-icon>account_box</mat-icon>\r\n <span>{{ 'SHELL.PROFILE' | translate}}</span>\r\n <mat-icon class=\"activity-recorder recording-style\" *ngIf=\"isRecording\">\r\n <!-- fiber_manual_record -->\r\n </mat-icon>\r\n </button>\r\n\r\n <!-- <button mat-menu-item (click)=\"goToUserStore()\" *ngIf=\"isStoreAccess\">\r\n <mat-icon>cloud</mat-icon>\r\n <span>Store</span>\r\n </button> -->\r\n <button mat-menu-item matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.CLEARDEMODATA' | translate}}\" *ngIf=\"showDeleteIcon && showDelete\"\r\n (click)=\"clearDemoData()\" [style.overflow]=\"'visible'\">\r\n <mat-icon>delete</mat-icon>\r\n <span>{{ 'SHELL.CLEARDEMODATA' | translate}}</span>\r\n </button>\r\n <button mat-menu-item matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.EXPORTCONFIGURATION' | translate}}\"\r\n *ngIf=\"canAccess_feature_ManageSystemExports\" (click)=\"exportConfigurationDialogData()\"\r\n [style.overflow]=\"'visible'\">\r\n <mat-icon>get_app</mat-icon>\r\n <span>{{ 'SHELL.EXPORTCONFIGURATION' | translate}}</span>\r\n </button>\r\n <button mat-menu-item matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.IMPORTCONFIGURATION' | translate}}\"\r\n [satPopoverAnchorFor]=\"fileUploadDropzonePopover\" #fileUploadDropzonePopup=\"satPopoverAnchor\"\r\n *ngIf=\"canAccess_feature_ManageSystemImports\" (click)=\"addUploadFilePopupOpen(fileUploadDropzonePopup)\">\r\n <mat-icon>publish</mat-icon>\r\n <span>{{ 'SHELL.IMPORTCONFIGURATION' | translate}}</span>\r\n </button>\r\n <!--<div class=\"filter-data custom-box language-section\" (click)=\"$event.stopPropagation()\">\r\n <mat-select placeholder=\"\" name=\"currentLang\" [(ngModel)]=\"currentLang\" (selectionChange)=\"setLang()\">\r\n <mat-select-trigger>\r\n <div fxLayout=\"row\" fxLayoutGap=\"15px\">\r\n <mat-icon fxFlex=\"24px\" class=\"language-icon\">language</mat-icon>\r\n <span fxFlex=\"calc(100% - 40px)\" class=\"language-display\">{{ selectedLangName }}</span>\r\n </div>\r\n </mat-select-trigger>\r\n <mat-option value=\"option\" *ngFor=\"let lang of availableLangs\" [value]=\"lang.code\">\r\n {{ lang.name }}\r\n </mat-option>\r\n </mat-select>\r\n </div>-->\r\n <button mat-menu-item (click)=\"onNavigateToBillingScreen()\" *ngIf=\"canAccess_feature_ManageAccountsAndBilling\">\r\n <mat-icon>account_balance</mat-icon>\r\n <span>Account & Billing</span>\r\n </button>\r\n <button mat-menu-item (click)=\"onNavigateToPricingScreen()\" *ngIf=\"canAccess_feature_ManageAccountsAndBilling\">\r\n <mat-icon>account_balance_wallet</mat-icon>\r\n <span>Pricing & Features</span>\r\n </button>\r\n\r\n <button *ngIf=\"canAccess_feature_AlternateSignIn\" mat-menu-item (click)=\"alternateSignIn()\"\r\n [style.overflow]=\"'visible'\" matTooltipClass=\"tooltipClass-mat\" matTooltip=\"{{ 'SHELL.SIGNINAS' | translate}}\">\r\n <mat-icon>how_to_reg</mat-icon>\r\n <span>{{ 'SHELL.SIGNINAS' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"onSignout()\">\r\n <mat-icon>exit_to_app</mat-icon>\r\n <span>{{ 'SHELL.SIGNOUT' | translate}}</span>\r\n </button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"feedBackPopover.toggle();openFeedBackDialog()\">\r\n <mat-icon class=\"feedback-icon\" [satPopoverAnchorFor]=\"feedBackPopover\">\r\n sentiment_satisfied_alt\r\n </mat-icon>\r\n <span>v-{{applicationVersion}}</span>\r\n </button>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<!-- <ngx-ui-loader fgsSize=\"180\" [fgsType]=\"spinnerType\" color=\"primary\"></ngx-ui-loader> -->\r\n<div *ngIf=\"loading\" class=\"k-i-loading\"></div>\r\n<sat-popover #feedBackPopover verticalAlign=\"below\" hasBackdrop backdropClass=\"backdrop-color\"\r\n [interactiveClose]=\"false\" horizontalAlign=\"end\">\r\n <app-submit-feedback *ngIf=\"isFeedBackDialog\" (closeDialog)=\"closeFeedBacklogDialog()\">\r\n </app-submit-feedback>\r\n</sat-popover>\r\n\r\n<mat-menu #menu2=\"matMenu\" class=\"dialog_window\" (click)=\"$event.stopPropagation()\">\r\n <mat-card-content class=\"p-0 m-0 listof_assets store-list-dropdown\" id=\"style-1\">\r\n <mat-list class=\"compact-list\">\r\n <mat-card class=\"p-0 asset-card\" *ngIf=\"(canAccess_feature_AddOrUpdateForm || canAccess_feature_ViewForms)\"\r\n [routerLink]=\"['/applications/view-forms']\">\r\n <span class=\"hide-content-overflow userStory-name-control store-dropdown-padding\">Forms</span>\r\n </mat-card>\r\n <mat-card class=\"p-0 asset-card\" *ngIf=\"canAccess_feature_AddOrUpdateApplications\"\r\n [routerLink]=\"['/applications/custom-applications']\">\r\n <span class=\"hide-content-overflow userStory-name-control store-dropdown-padding\">Custom\r\n applications</span>\r\n </mat-card>\r\n <mat-card *ngIf=\"canAccess_feature_ViewRoles\" class=\"p-0 asset-card\"\r\n [routerLink]=\"['/rolemanagement/rolemanagement']\">\r\n <span class=\"hide-content-overflow userStory-name-control store-dropdown-padding\">Role\r\n configuration</span>\r\n </mat-card>\r\n <mat-card *ngIf=\"canAccess_feature_ManageProjectRolePermissions\" class=\"p-0 asset-card\"\r\n [routerLink]=\"['/rolemanagement/entityrolemanagement']\">\r\n <span class=\"hide-content-overflow userStory-name-control store-dropdown-padding\">{{projectRoleText |\r\n softLabelsPipe : softLabels}}</span>\r\n </mat-card>\r\n </mat-list>\r\n </mat-card-content>\r\n</mat-menu>\r\n\r\n<div [@fade] *ngIf=\"displayWelcomeNote && userFullName\" class=\"welcome-note\">\r\n <span *ngIf=\"loggedInCount == 1; else elseSpan\">Welcome &nbsp; </span> <span> {{ userFullName }} </span>\r\n <ng-template #elseSpan> Welcome back &nbsp;</ng-template>\r\n</div>\r\n<sat-popover #fileUploadDropzonePopover hasBackdrop [interactiveClose]=\"false\" backdropClass=\"testrun-popover\"\r\n scrollStrategy=\"reposition\">\r\n <mat-card class=\"p-0 mr-0 custom-hrm-dropzone\">\r\n <mat-card-title>\r\n <div class=\"card-title-text mat-bg-primary p-05\" fxLayout=\"row\">\r\n <div fxFlex class=\"text-center\">\r\n {{'TESTMANAGEMENT.UPLOADFILES' | translate}}\r\n </div>\r\n <div fxFlex=\"20px\" fxLayoutAlign=\"end center\">\r\n <button class=\"inline_edit_close_btn btn\" (click)=\"closeUploadFilePopup()\">\r\n <fa-icon icon=\"times\"></fa-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card-title>\r\n <div class=\"m-1\">\r\n <div class=\"custom-dropzone dropzone-height\" ngx-dropzone (change)=\"filesSelected($event)\" accept=\".json\">\r\n <ngx-dropzone-label>\r\n <span>{{'DOCUMENTMANAGEMENT.DRAGANDDROPFILESHERE' | translate}}</span>\r\n </ngx-dropzone-label>\r\n <ngx-dropzone-preview class=\"custom-dropzone-preview\" *ngFor=\"let f of files\" [removable]=\"true\"\r\n (removed)=\"onRemove(f)\">\r\n <ngx-dropzone-label class=\"custom-dropzone-label\" [attr.data-tip]=\"f.name\">\r\n {{ setLabelNameForDropzone(f.name) }}\r\n </ngx-dropzone-label>\r\n </ngx-dropzone-preview>\r\n </div>\r\n <div class=\"m-05 text-muted\" style=\"text-align: center;\">\r\n <span>allowed file extensions : .json</span>\r\n </div>\r\n <mat-progress-bar color=\"primary\" mode=\"determinate\" [value]=\"progressValue\" *ngIf=\"progressValue > 0\">\r\n </mat-progress-bar>\r\n <div *ngIf=\"progressValue > 0\">\r\n {{progressValue}}% completed (Uploading {{fileCounter}} of {{files.length}} files)\r\n </div>\r\n <div class=\"mt-05\" fxLayoutAlign=\"center end\" *ngIf=\"filesPresent\">\r\n <button mat-button mat-raised-button color=\"primary\" (click)=\"saveFiles()\">\r\n <fa-icon class=\"mr-05\" icon=\"save\"></fa-icon>{{'UPLOAD' | translate}}\r\n </button>\r\n <button class=\"ml-1\" mat-button mat-raised-button (click)=\"removeAllFiles();\">\r\n <fa-icon class=\"mr-05\" icon=\"times\"></fa-icon>{{'DOCUMENTMANAGEMENT.CLEARFILES' | translate}}\r\n </button>\r\n </div>\r\n <div class=\"mt-05\" fxLayoutAlign=\"center end\" *ngIf=\"importingInProgress\">\r\n <button class=\"ml-1\" mat-button mat-raised-button [disabled]=\"true\">\r\n <fa-icon class=\"mr-05\" icon=\"upload\"></fa-icon>{{'SHELL.IMPORTINGTEXT' | translate }}\r\n <i class=\"fa fa-spin fa-spinner\" *ngIf=\"importingInProgress\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card>\r\n</sat-popover>\r\n\r\n<style>\r\n .file-or-folder-icon {\r\n width: 50px;\r\n height: 50px;\r\n font-size: 50px;\r\n }\r\n\r\n .file-or-folder-name-align {\r\n overflow: hidden;\r\n display: -webkit-box;\r\n -webkit-line-clamp: 2;\r\n -webkit-box-orient: vertical;\r\n text-align: center;\r\n word-break: break-word;\r\n }\r\n\r\n .dropzone-height {\r\n height: 130px;\r\n }\r\n\r\n .custom-dropzone-preview {\r\n height: 100px !important;\r\n min-height: 100px !important;\r\n padding: 0px !important;\r\n }\r\n</style>\r\n<ng-template #openAnnoucementDialogComponent let-data>\r\n <announcement-dialog [data]=[data]></announcement-dialog>\r\n</ng-template>","import { Component } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { SoftLabelConfigurationModel } from '../../models/softlabels-model';\r\nimport { RecentSearchService } from '../../services/recentSearch.service';\r\n\r\n@Component({\r\n selector: \"app-sidebar\",\r\n templateUrl: \"./side-bar.component.html\"\r\n})\r\n\r\nexport class SideBarComponent {\r\n menuItem: any[] = [];\r\n items: any[] = [];\r\n selectedRowIndex: any;\r\n showBackGroundColor: number;\r\n softLabels: SoftLabelConfigurationModel[];\r\n\r\n constructor(private recentSearchService: RecentSearchService, private router: Router) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.router.events\r\n .subscribe(\r\n (event: any) => {\r\n if (event instanceof NavigationEnd) {\r\n this.routerActive();\r\n }\r\n });\r\n this.getSoftLabelConfigurations();\r\n this.getMenuItems();\r\n }\r\n\r\n getSoftLabelConfigurations() {\r\n this.softLabels = JSON.parse(localStorage.getItem('SoftLabels'));\r\n }\r\n\r\n getMenuItems() {\r\n var retrieveDashboards = false\r\n this.menuItem = JSON.parse(localStorage.getItem(LocalStorageProperties.SideBarMenuItems));\r\n\r\n if (!this.menuItem) {\r\n this.recentSearchService.searchMenuData(retrieveDashboards).subscribe((response: any) => {\r\n if (response.success) {\r\n let data = response.data;\r\n var menuItems = data ? data.menuItems : null;\r\n if (menuItems && menuItems != null) {\r\n this.menuItem = menuItems;\r\n localStorage.setItem(LocalStorageProperties.SideBarMenuItems, JSON.stringify(this.menuItem));\r\n this.items = this.menuItem.filter(item => item.type != \"dropDown\");\r\n this.routerActive();\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n this.items = this.menuItem.filter(item => item.type != \"dropDown\");\r\n this.routerActive();\r\n }\r\n }\r\n\r\n routerActive() {\r\n if (this.items && this.items.length > 0) {\r\n var index = this.items.findIndex(i => this.router.url == \"/\" + i.state);\r\n this.selectedRowIndex = index;\r\n if (this.router.url.includes('/dashboard-management')) {\r\n this.selectedRowIndex = 99;\r\n }\r\n }\r\n }\r\n\r\n enter(i) {\r\n this.showBackGroundColor = i;\r\n }\r\n\r\n leave(i) {\r\n this.showBackGroundColor = null;\r\n }\r\n\r\n openMenu(link){\r\n this.router.navigate([link]);\r\n }\r\n \r\n}\r\n","<ul appDropdown class=\"sidenav\" style=\"padding-left: 0px;width: 62px;\">\r\n <li appDropdownLink routerLinkActive=\"open\" class=\"li-menu\" style=\"list-style: none;\"\r\n (mouseenter)=\"enter(99)\" (mouseleave)=\"leave(99)\" [ngClass]=\"(selectedRowIndex == 99 || showBackGroundColor == 99) ? 'menu-highlight' : ''\"\r\n [style.background-color]=\"(selectedRowIndex == 99 || showBackGroundColor == 99) ? '#70C8C1' : ''\">\r\n <div routerLink=\"/dashboard-management\" class=\"cursor-pointer div-menu\">\r\n <a appDropdownToggle matRipple style=\"font-size: 15px;\">\r\n <mat-icon class=\"mat-icon-color\"\r\n style=\"text-align: center;margin-right: 3px;height: 36px;width: 36px;line-height: 36px;border-left: 18px solid;border-color: transparent;\">\r\n home</mat-icon>\r\n <div style=\"font-size: 11px !important;text-align: center;\" class=\"menu-text-color\">Home</div>\r\n </a>\r\n </div>\r\n </li>\r\n <li *ngFor=\"let item of items; let i = index;\" appDropdownLink routerLinkActive=\"open\" [routerLinkActiveOptions]=\"{exact:\r\n true}\" class=\"li-menu\"\r\n style=\"list-style: none;\" [ngClass]=\"(selectedRowIndex == i || showBackGroundColor == i) ? 'menu-highlight' : ''\"\r\n [style.background-color]=\"(selectedRowIndex == i || showBackGroundColor == i) ? '#70C8C1' : ''\">\r\n <div *ngIf=\"item.type == 'link' || item.type == 'applicationlink'\" (mouseenter)=\"enter(i)\" [routerLink]=\"item.state\"\r\n (mouseleave)=\"leave(i)\" class=\"cursor-pointer div-menu\" (click)=\"openMenu(item.state)\">\r\n <a appDropdownToggle matRipple *ngIf=\"item.type === 'link'\"\r\n style=\"font-size: 15px;\">\r\n <mat-icon class=\"mat-icon-color\"\r\n style=\"text-align: center;margin-right: 3px;height: 36px;width: 36px;line-height: 36px;border-left: 18px solid;border-color: transparent;\">\r\n {{ item.icon }}</mat-icon>\r\n <div style=\"font-size: 11px !important;text-align: center;\" class=\"menu-text-color\">\r\n {{item.menu | softLabelsPipe : softLabels}}</div>\r\n </a>\r\n </div>\r\n </li>\r\n</ul>\r\n<!-- <div [style.background-color]=\"(selectedRowIndex == i || showBackGroundColor == i) ? 'rgba(0,0,0,0.4)' : themeBaseColor\"></div> -->","import { Component, OnInit, AfterViewInit, ViewChild, HostListener, OnDestroy } from \"@angular/core\";\r\nimport { Router, NavigationEnd, RouteConfigLoadStart, RouteConfigLoadEnd, ResolveStart, ResolveEnd, NavigationStart, NavigationCancel, NavigationError, Event, } from \"@angular/router\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { MatSidenav } from \"@angular/material/sidenav\";\r\nimport { MediaChange } from \"@angular/flex-layout\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\n// import PerfectScrollbar from 'perfect-scrollbar';\r\nimport { Observable, Subject } from \"rxjs\";\r\nimport { takeUntil, tap } from \"rxjs/operators\";\r\nimport { filter } from \"rxjs/operators\";\r\nimport { select, Store } from \"@ngrx/store\";\r\nimport { UserDetailsFetchedAfterLogin, AuthenticationActionTypes, UserInitialDetailsFetched } from \"../../store/actions/authentication.actions\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { Actions, ofType } from \"@ngrx/effects\";\r\nimport { Location } from \"@angular/common\";\r\nimport { SoftLabelConfigurationModel } from \"../../models/softlabels-model\"\r\nimport { LayoutService } from '../../services/layout.service';\r\nimport { UserStory } from '../../models/userStory';\r\nimport * as SharedModuleState from \"../../store/reducers/index\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport { CommonService } from '../../services/common-used.service';\r\nimport { PubNubAngular } from 'pubnub-angular2';\r\nimport { SPINNER } from 'ngx-ui-loader';\r\nimport { SignalrService } from \"../../services/signalr.service\";\r\n\r\n@Component({\r\n selector: \"app-admin-layout\",\r\n templateUrl: \"./admin-layout.template.html\"\r\n})\r\n\r\nexport class AdminLayoutComponent implements OnInit, AfterViewInit, OnDestroy {\r\n public isModuleLoading: Boolean = false;\r\n private moduleLoaderSub: Subscription;\r\n private layoutConfSub: Subscription;\r\n private routerEventSub: Subscription;\r\n private mediaSub: Subscription;\r\n softLabels$: Observable<SoftLabelConfigurationModel[]>;\r\n softLabels: SoftLabelConfigurationModel[];\r\n // private sidebarPS: PerfectScrollbar;\r\n\r\n // private bodyPS: PerfectScrollbar;\r\n // private headerFixedBodyPS: PerfectScrollbar;\r\n public scrollConfig = {};\r\n public layoutConf: any = {};\r\n display: boolean;\r\n userStories$: Observable<UserStory[]>;\r\n show: boolean;\r\n userStories: UserStory[];\r\n userStory: UserStory;\r\n anyOperationInProgressForAutoLogging$: Observable<boolean>;\r\n public ngDestroyed$ = new Subject();\r\n dashboardPage: boolean;\r\n bgcolor: any;\r\n private sub: Subscription;\r\n userstory = 'userstory';\r\n loading = false;\r\n totalLoadingTime: number = 0;\r\n interval;\r\n spinnerType = SPINNER.circle;\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n public translate: TranslateService,\r\n private layout: LayoutService,\r\n private store: Store<SharedModuleState.State>,\r\n private cookieService: CookieService,\r\n private actionUpdates$: Actions,\r\n private location: Location,\r\n private commonService: CommonService,\r\n private pubnub: PubNubAngular,\r\n private signalr: SignalrService,\r\n ) {\r\n // let conId = sessionStorage.getItem('conectionId');\r\n // if(!conId) {\r\n this.signalr.initializeSignalRConnection();\r\n // }\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let companySettings = localStorage.getItem(LocalStorageProperties.CompanySettings);\r\n if (!companySettings || companySettings == 'null' || companySettings == \"undefined\") {\r\n pubnub.init({\r\n publishKey: environment.publishKey,\r\n subscribeKey: environment.subscribeKey\r\n });\r\n } else {\r\n const comSet = JSON.parse(localStorage.getItem(LocalStorageProperties.CompanySettings));\r\n var publishKey = comSet.find(i => i.key == \"PubnubPublishKey\");\r\n var subscribeKey = comSet.find(i => i.key == \"PubnubSubscribeKey\")\r\n if ((publishKey && publishKey.value) && (subscribeKey && subscribeKey.value)) {\r\n pubnub.init({\r\n publishKey: publishKey.value,\r\n subscribeKey: subscribeKey.value\r\n });\r\n } else {\r\n pubnub.init({\r\n publishKey: environment.publishKey,\r\n subscribeKey: environment.subscribeKey\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n // Close sidenav after route change in mobile\r\n this.routerEventSub = router.events\r\n .pipe(filter(event => event instanceof NavigationEnd))\r\n .subscribe((routeChange: NavigationEnd) => {\r\n this.layout.adjustLayout({ route: routeChange.url });\r\n });\r\n\r\n // Translator init\r\n let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);\r\n\r\n if (currentCulture === 'null' || currentCulture === 'undefined') {\r\n currentCulture = 'en';\r\n }\r\n translate.use(currentCulture);\r\n\r\n\r\n this.router.events.subscribe((event: Event) => {\r\n switch (true) {\r\n case event instanceof NavigationStart: {\r\n this.loading = true;\r\n this.totalLoadingTime = 0;\r\n this.startTimer();\r\n break;\r\n }\r\n\r\n case event instanceof NavigationEnd: {\r\n this.loading = false;\r\n clearInterval(this.interval);\r\n break;\r\n }\r\n case event instanceof NavigationCancel:\r\n case event instanceof NavigationError: {\r\n this.loading = false;\r\n break;\r\n }\r\n default: {\r\n break;\r\n }\r\n }\r\n });\r\n\r\n router.events.subscribe(val => {\r\n if (location.path() != \"\") {\r\n if (location.path().includes('/dashboard-management/dashboard/')) {\r\n this.dashboardPage = true;\r\n this.bgcolor = 'none';\r\n }\r\n else {\r\n this.dashboardPage = false;\r\n this.bgcolor = 'beige';\r\n }\r\n }\r\n });\r\n\r\n // if (this.cookieService.check(LocalStorageProperties.UserModel)) {\r\n // let data = JSON.parse(this.cookieService.get(LocalStorageProperties.UserModel));\r\n // if (data && data != 'null' && data != 'undefined')\r\n // this.store.dispatch(new UserDetailsFetchedAfterLogin(data));\r\n // }\r\n\r\n if ((localStorage.getItem(LocalStorageProperties.UserModel) != null && localStorage.getItem(LocalStorageProperties.UserModel) != undefined)\r\n && !localStorage.hasOwnProperty(LocalStorageProperties.UserRoleFeatures)) {\r\n let data = JSON.parse(localStorage.getItem(LocalStorageProperties.UserModel));\r\n this.store.dispatch(new UserDetailsFetchedAfterLogin(data));\r\n }\r\n\r\n this.actionUpdates$\r\n .pipe(\r\n takeUntil(this.ngDestroyed$),\r\n ofType(AuthenticationActionTypes.ClearDemoDataCompleted),\r\n tap((result: any) => {\r\n if (result && result.companyId) {\r\n this.getSoftLabels();\r\n }\r\n })\r\n ).subscribe();\r\n }\r\n\r\n ngOnInit() {\r\n this.getSoftLabelConfigurations();\r\n this.layoutConf = this.layout.layoutConf;\r\n // this.layout.adjustLayout();\r\n\r\n // FOR MODULE LOADER FLAG\r\n this.moduleLoaderSub = this.router.events.subscribe(event => {\r\n if (\r\n event instanceof RouteConfigLoadStart ||\r\n event instanceof ResolveStart\r\n ) {\r\n this.isModuleLoading = false;\r\n }\r\n if (event instanceof RouteConfigLoadEnd || event instanceof ResolveEnd) {\r\n this.isModuleLoading = false;\r\n }\r\n });\r\n }\r\n\r\n @HostListener(\"window:resize\", ['$event'])\r\n\r\n onResize(event) {\r\n this.layout.adjustLayout(event);\r\n }\r\n\r\n Opened(event) {\r\n this.display = event;\r\n }\r\n\r\n getSoftLabelConfigurations() {\r\n this.softLabels = JSON.parse(localStorage.getItem('SoftLabels'));\r\n }\r\n\r\n getSoftLabels() {\r\n let model = new SoftLabelConfigurationModel();\r\n model.searchText = null;\r\n this.commonService.getSoftLabels(model).subscribe((response: any) => {\r\n if (response.success) {\r\n let data = response.data;\r\n if (data) {\r\n localStorage.setItem('SoftLabels', JSON.stringify(data));\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n // this.layoutConfSub = this.layout.layoutConf$.subscribe(change => {\r\n // // this.initBodyPS(change)\r\n // })\r\n }\r\n\r\n // initBodyPS(layoutConf:any = {}) {\r\n // if(layoutConf.navigationPos === 'side' && layoutConf.topbarFixed) {\r\n // if (this.bodyPS) this.bodyPS.destroy();\r\n // if (this.headerFixedBodyPS) this.headerFixedBodyPS.destroy();\r\n // this.headerFixedBodyPS = new PerfectScrollbar('.rightside-content-hold', {\r\n // suppressScrollX: true\r\n // });\r\n // this.scrollToTop('.rightside-content-hold');\r\n // } else {\r\n // if (this.bodyPS) this.bodyPS.destroy();\r\n // if (this.headerFixedBodyPS) this.headerFixedBodyPS.destroy();\r\n // this.bodyPS = new PerfectScrollbar('.main-content-wrap', {\r\n // suppressScrollX: true\r\n // });\r\n // this.scrollToTop('.main-content-wrap');\r\n // }\r\n // }\r\n scrollToTop(selector: string) {\r\n if (document) {\r\n let element = <HTMLElement>document.querySelector(selector);\r\n element.scrollTop = 0;\r\n }\r\n }\r\n ngOnDestroy() {\r\n if (this.moduleLoaderSub) {\r\n this.moduleLoaderSub.unsubscribe();\r\n }\r\n if (this.layoutConfSub) {\r\n this.layoutConfSub.unsubscribe();\r\n }\r\n if (this.routerEventSub) {\r\n this.routerEventSub.unsubscribe();\r\n }\r\n if (this.sub) {\r\n this.sub.unsubscribe();\r\n }\r\n }\r\n closeSidebar() {\r\n this.layout.publishLayoutChange({\r\n sidebarStyle: \"closed\"\r\n });\r\n }\r\n\r\n startTimer() {\r\n this.interval = setInterval(() => {\r\n this.totalLoadingTime++;\r\n }, 1000)\r\n }\r\n}\r\n","<div class=\"app-admin-wrap\" [dir]='layoutConf.dir'>\r\n <!-- Header for top navigation layout -->\r\n <!-- ONLY REQUIRED FOR **TOP** NAVIGATION LAYOUT -->\r\n <app-header-top *ngIf=\"layoutConf.navigationPos === 'top'\" [notificPanel]=\"sidenav\">\r\n </app-header-top>\r\n <ngx-ui-loader fgsSize=\"180\" [fgsType]=\"spinnerType\" color=\"primary\"></ngx-ui-loader>\r\n <!-- Main Container -->\r\n <mat-sidenav-container [dir]='layoutConf.dir' class=\"app-admin-container app-side-nav-container mat-drawer-transition\"\r\n [ngClass]=\"{\r\n 'navigation-top': layoutConf.navigationPos === 'top',\r\n 'sidebar-full': layoutConf.sidebarStyle === 'full',\r\n 'sidebar-compact': layoutConf.sidebarStyle === 'compact' && layoutConf.navigationPos === 'side',\r\n 'sidebar-compact-big': layoutConf.sidebarStyle === 'compact-big' && layoutConf.navigationPos === 'side',\r\n 'layout-intransition': layoutConf.layoutInTransition,\r\n 'sidebar-opened': layoutConf.sidebarStyle !== 'closed' && layoutConf.navigationPos === 'side',\r\n 'sidebar-closed': layoutConf.sidebarStyle === 'closed',\r\n 'fixed-topbar': layoutConf.topbarFixed && layoutConf.navigationPos === 'side'\r\n }\">\r\n <!-- SIDEBAR -->\r\n <!-- ONLY REQUIRED FOR **SIDE** NAVIGATION LAYOUT -->\r\n <!-- <app-sidebar-side *ngIf=\"layoutConf.navigationPos === 'side'\"></app-sidebar-side> -->\r\n\r\n <!-- Top navigation layout (navigation for mobile screen) -->\r\n <!-- ONLY REQUIRED FOR **TOP** NAVIGATION MOBILE LAYOUT -->\r\n <app-sidebar-top *ngIf=\"layoutConf.navigationPos === 'top' && layoutConf.isMobile\"></app-sidebar-top>\r\n\r\n <!-- App content -->\r\n <div class=\"main-content-wrap\" [perfectScrollbar]=\"scrollConfig\" [disabled]=\"layoutConf.topbarFixed\">\r\n <!-- Header for side navigation layout -->\r\n <!-- ONLY REQUIRED FOR **SIDE** NAVIGATION LAYOUT -->\r\n <app-header-side (opened)=\"Opened($event)\" [notificPanel]=\"sidenav\">\r\n </app-header-side>\r\n\r\n <!-- <div class=\"mr-1\" *ngIf=\"!dashboardPage\">\r\n <gc-userstory-summary *ngIf=\"userStory\" style=\"width: -webkit-fill-available;background-color: beige;\"\r\n [userStory]=\"userStory\" [isSubTasksPage]=false [isLoading]=\"(anyOperationInProgressForAutoLogging$|async)\"\r\n [isUserStoriesPage]=false (updateAutoLog)=\"LogAction($event)\">\r\n </gc-userstory-summary>\r\n <div *ngIf=\"!userStory\">\r\n You are not started any userstory yet! Please start work!!\r\n </div>\r\n <div class=\"ml-05\">\r\n <fa-icon class=\"caret-size\" style=\"color:#3da8b5\" icon=\"caret-down\" [satPopoverAnchorFor]=\"recentUserStory\"\r\n (click)=\"recentUserStory.toggle()\"></fa-icon>\r\n </div>\r\n <sat-popover #recentUserStory hasBackdrop backdropClass=\"us-popover\"> \r\n <mat-card>\r\n <div *ngFor=\"let userStory of (userStories$ | async | slice:0:5)\" style=\"min-width: 1000px;\" class=\"view-us\">\r\n <gc-userstory-summary style=\"width: -webkit-fill-available;background-color: beige;\"\r\n [userStory]=\"userStory\" [isSubTasksPage]=false [isLoading]=\"(anyOperationInProgressForAutoLogging$|async)\"\r\n [isUserStoriesPage]=true (updateAutoLog)=\"LogAction($event)\" [isShow]=\"false\" (close)=\"recentUserStory.close()\">\r\n </gc-userstory-summary>\r\n </div>\r\n </mat-card>\r\n </sat-popover>\r\n </div> -->\r\n\r\n <div class=\"rightside-content-hold\" [perfectScrollbar]=\"scrollConfig\" [disabled]=\"!layoutConf.topbarFixed\"\r\n [ngClass]=\"{'blur-on-opened': display}\" [ngClass]=\"{'show-in-dashboard':dashboardPage}\">\r\n <!-- <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"mr-1\" *ngIf=\"!dashboardPage\" [ngStyle]=\"{'margin-left': '90px'}\" \r\n [ngStyle]=\"{'background-color': userStory ? 'beige' : 'none' }\" style=\"margin-right:90px !important\">\r\n <gc-userstory-summary fxFlex=\"90\" *ngIf=\"userStory\" style=\"width: -webkit-fill-available;background-color: beige;\"\r\n [userStory]=\"userStory\" [isSubTasksPage]=false [isLoading]=\"(anyOperationInProgressForAutoLogging$|async)\"\r\n [isUserStoriesPage]=false (updateAutoLog)=\"LogAction($event)\">\r\n </gc-userstory-summary>\r\n <mat-card *ngIf=\"!userStory\" style=\"padding: 10px;left: -75px;\">\r\n <span>\r\n You are not started any {{ userstory | softLabelsPipe : softLabels}} yet! Please start work!!\r\n </span>\r\n <span class=\"ml-05\">\r\n <fa-icon class=\"caret-size\" style=\"color:#3da8b5\" icon=\"caret-down\" [satPopoverAnchorFor]=\"recentUserStory\"\r\n (click)=\"recentUserStory.toggle()\"></fa-icon>\r\n </span>\r\n </mat-card>\r\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\" *ngIf=\"anyOperationInProgressForAutoLogging$|async\">\r\n </mat-progress-bar> -->\r\n <!-- <div fxFlex class=\"ml-05\" *ngIf=\"userStory\">\r\n <fa-icon class=\"caret-size\" style=\"color:#3da8b5\" icon=\"caret-down\" [satPopoverAnchorFor]=\"recentUserStory\"\r\n (click)=\"recentUserStory.toggle()\"></fa-icon>\r\n </div>\r\n <sat-popover #recentUserStory hasBackdrop backdropClass=\"us-popover\"> \r\n <mat-card>\r\n <div *ngFor=\"let userStory of (userStories$ | async | slice:0:5)\" style=\"min-width: 1000px;\" class=\"view-us\">\r\n <gc-userstory-summary style=\"width: -webkit-fill-available;background-color: beige;\"\r\n [userStory]=\"userStory\" [isSubTasksPage]=false [isLoading]=\"(anyOperationInProgressForAutoLogging$|async)\"\r\n [isUserStoriesPage]=true (updateAutoLog)=\"LogAction($event)\" [isShow]=\"false\" (close)=\"recentUserStory.close()\">\r\n </gc-userstory-summary>\r\n </div>\r\n </mat-card>\r\n </sat-popover>\r\n </div> -->\r\n <!-- View Loader -->\r\n <div class=\"view-loader\" *ngIf=\"isModuleLoading\">\r\n <div class=\"spinner\">\r\n <div class=\"double-bounce1 mat-bg-accent\"></div>\r\n <div class=\"double-bounce2 mat-bg-primary\"></div>\r\n </div>\r\n </div>\r\n <!-- View outlet -->\r\n <div id=\"btrak-preloader\" *ngIf=\"loading\">\r\n <span class=\"preloading-text\">\r\n {{ 'LOADINGPLEASEWAIT' | translate }} ({{totalLoadingTime}} {{ 'SECONDS' | translate }})\r\n </span>\r\n <div id=\"btrak-loader\" *ngIf=\"loading\">\r\n </div>\r\n </div>\r\n <div *ngIf=\"!loading\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- View overlay for mobile navigation -->\r\n <div class=\"sidebar-backdrop\" [ngClass]=\"{'visible': layoutConf.sidebarStyle !== 'closed' && layoutConf.isMobile}\"\r\n (click)=\"closeSidebar()\"></div>\r\n\r\n <!-- Notificaation bar -->\r\n <mat-sidenav #sidenav mode=\"side\" opened class=\"example-sidenav\" [fixedInViewport]=\"true\" [fixedTopGap]=\"45\"\r\n [fixedBottomGap]=\"0\" class=\"side-nav-color\" id=\"style-1\">\r\n <app-sidebar></app-sidebar>\r\n </mat-sidenav>\r\n </mat-sidenav-container>\r\n</div>","export class CompanyPaymentUpsertModel{\r\n \r\n CardHolderName :string;\r\n SubscriptionType :string;\r\n CardHolderBillingAddress :string;\r\n CardNumber:any;\r\n CardExpiryDate:string;\r\n CardSecurityCode:string;\r\n TotalAmount:any;\r\n StripeTokenId:string;\r\n PlanName:string;\r\n StripeCustomerId:string;\r\n StripePaymentId:string;\r\n Status:string;\r\n NoOfPurchases:number;\r\n Email : string;\r\n AddressOptions : any;\r\n TransactionName : any;\r\n}","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { map } from 'rxjs/operators';\r\nimport { LocalStorageProperties } from '../../globaldependencies/constants/localstorage-properties';\r\nimport { ApiUrls } from '../constants/api-urls';\r\nimport { Observable } from 'rxjs';\r\nimport { CompanyPaymentUpsertModel } from '../models/company-payment-model';\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class PaymentService {\r\n constructor(private http: HttpClient, private cookieService: CookieService) { }\r\n\r\n cancelSubscription() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n const body = JSON.stringify({});\r\n return this.http.post<any>(APIEndpoint + ApiUrls.CancelSubscription, body, httpOptions);\r\n }\r\n\r\n getAllInvoices(transaction) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n var companyPaymentDetails = new CompanyPaymentUpsertModel();\r\n companyPaymentDetails.TransactionName = transaction;\r\n let body = JSON.stringify(companyPaymentDetails);\r\n return this.http.post<any>(APIEndpoint + ApiUrls.GetInvoiceDetails, body, httpOptions);\r\n }\r\n\r\n getActiveUsersCount() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n let paramsObject = new HttpParams();\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' }),\r\n params: paramsObject\r\n };\r\n return this.http\r\n .get(APIEndpoint + ApiUrls.GetActiveUsersCount, httpOptions)\r\n .pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getPurchasedLicensesCount() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n let paramsObject = new HttpParams();\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' }),\r\n params: paramsObject\r\n };\r\n return this.http\r\n .get(APIEndpoint + ApiUrls.GetPurchasedLicensesCount, httpOptions)\r\n .pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n upsertCompanyPayments(companyPaymentDetails: CompanyPaymentUpsertModel) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\r\n };\r\n\r\n let body = JSON.stringify(companyPaymentDetails);\r\n return this.http\r\n .post(APIEndpoint + `Payments/PaymentsApi/UpsertCompanyPayment`, body, httpOptions)\r\n .pipe(\r\n map(result => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n getPaymentHistory() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n const body = JSON.stringify({});\r\n return this.http.post<any>(APIEndpoint + ApiUrls.GetPaymentHistory, body, httpOptions);\r\n}\r\n\r\ngetAllTransactions(transaction) {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n let APIEndpoint = environment.apiURL;\r\n const httpOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\" })\r\n };\r\n var companyPaymentDetails = new CompanyPaymentUpsertModel();\r\n companyPaymentDetails.TransactionName = transaction;\r\n let body = JSON.stringify(companyPaymentDetails);\r\n return this.http.post<any>(APIEndpoint + ApiUrls.GetAllTransactionsDetails, body, httpOptions);\r\n}\r\n\r\n}","import { Component, OnInit, Inject, ViewChild } from \"@angular/core\";\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService, SPINNER } from 'ngx-ui-loader';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { CompanyPaymentUpsertModel } from '../../models/company-payment-model';\r\nimport { PaymentService } from '../../services/payment.service';\r\n\r\n@Component({\r\n selector: \"app-purchase-licenses\",\r\n templateUrl: \"./purchase-more-licenses.html\"\r\n})\r\n\r\nexport class PurchaseMoreLicensesComponent implements OnInit {\r\n\r\n handler: any = null;\r\n totalAmount: any = 0;\r\n isAnyOperationIsInprogress: boolean = false;\r\n isFromRoute: boolean = false;\r\n activeUsers: any = 0;\r\n planInterval: any;\r\n noOfPurchases: any;\r\n selectedPlanName: any;\r\n subscriptionType: string;\r\n companyMainLogo: any = \"https://bviewstorage.blob.core.windows.net/6671cd0d-5b91-4044-bdcc-e1f201c086c5/projects/d72d1c2f-dfbe-4d48-9605-cd3b7e38ed17/Main-Logo-9277cc4b-0c1f-4093-a917-1a65e874b3c9.png\";\r\n isDisable: boolean = false;\r\n isNewSub: boolean = false;\r\n spinnerType = SPINNER.pulse;\r\n isSucessPay: boolean;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any\r\n , public dialogRef: MatDialogRef<PurchaseMoreLicensesComponent>,\r\n private toastr: ToastrService\r\n , public router: Router\r\n , private paymentService: PaymentService,) {\r\n if (data != undefined && data != null) {\r\n this.selectedPlanName = data.productName;\r\n this.subscriptionType = this.planInterval = data.subscriptionType;\r\n this.activeUsers = this.noOfPurchases = data.noOfPurchases;\r\n this.isNewSub = data.isSubscriberNew;\r\n this.costCalculation();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n close() {\r\n this.dialogRef.close({ isReload: false });\r\n }\r\n\r\n costCalculation() {\r\n var purchases = Number(this.noOfPurchases)\r\n if (!isNaN(purchases) && this.activeUsers > purchases) {\r\n this.toastr.warning(\"No. of purchases should be more than previous one's\");\r\n this.isDisable = true;\r\n return;\r\n }\r\n this.isDisable = false;\r\n if (this.noOfPurchases != undefined && this.noOfPurchases != null && this.noOfPurchases != ''\r\n && this.planInterval != undefined && this.planInterval != null && this.planInterval != '' && !isNaN(purchases)) {\r\n var perUser = 0;\r\n if (this.selectedPlanName == 'Standard')\r\n perUser = 3;\r\n else if (this.selectedPlanName == 'Premium')\r\n perUser = 5;\r\n else if (this.selectedPlanName == 'Enterprise')\r\n perUser = 10;\r\n else\r\n perUser = 0;\r\n\r\n var normalTotal = perUser * Number(this.noOfPurchases);\r\n if (this.planInterval == 'month') {\r\n this.totalAmount = normalTotal.toFixed(2);\r\n }\r\n else if (this.planInterval == 'year') {\r\n this.totalAmount = ((normalTotal - (normalTotal * 20 / 100)) * 12).toFixed(2);\r\n }\r\n else\r\n this.totalAmount = 0;\r\n }\r\n }\r\n pay() {\r\n let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));\r\n var service = this.paymentService;\r\n var purchases = this.noOfPurchases;\r\n var totalAmt = this.totalAmount;\r\n var plan = this.selectedPlanName;\r\n var planInterval = this.planInterval;\r\n var tosters = this.toastr;\r\n var router = this.router;\r\n var dailogRef = this.dialogRef;\r\n this.isSucessPay = true;\r\n var isSucessPay = this.isSucessPay;\r\n var handler = (<any>window).StripeCheckout.configure({\r\n key: environment.stripeAPIKey,\r\n image: 'https://bviewstorage.blob.core.windows.net/4afeb444-e826-4f95-ac41-2175e36a0c16/hrm/0b2921a9-e930-4013-9047-670b5352f308/snovasys-72112b03-95dc-432c-aeef-c89fa13eae32.png',\r\n locale: 'auto',\r\n token: function (token: any) {\r\n if (token) {\r\n var companyPaymentUpsertModel = new CompanyPaymentUpsertModel();\r\n companyPaymentUpsertModel.CardHolderName = token.card.name;\r\n companyPaymentUpsertModel.CardHolderBillingAddress = token.card.name;\r\n companyPaymentUpsertModel.PlanName = plan;\r\n companyPaymentUpsertModel.SubscriptionType = planInterval;\r\n companyPaymentUpsertModel.TotalAmount = totalAmt;\r\n companyPaymentUpsertModel.NoOfPurchases = purchases;\r\n companyPaymentUpsertModel.Email = token.email;\r\n companyPaymentUpsertModel.StripeTokenId = token.id;\r\n companyPaymentUpsertModel.AddressOptions = token.card;\r\n service.upsertCompanyPayments(companyPaymentUpsertModel).subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n tosters.success(\"Your subscription has been successfully completed\");\r\n isSucessPay = false;\r\n router.navigate(['/shell/Accounts']);\r\n dailogRef.close({ isReload: true });\r\n }\r\n else {\r\n tosters.error(responseData.apiResponseMessages[0].message);\r\n isSucessPay = false;\r\n }\r\n });\r\n }\r\n }\r\n });\r\n this.isSucessPay = isSucessPay;\r\n var description = this.planInterval == 'month' ? 'Monthly subscription' : 'Annual subscription'\r\n handler.open({\r\n name: this.selectedPlanName,\r\n description: description,\r\n amount: this.totalAmount * 100,\r\n currency: 'GBP',\r\n billingAddress: \"true\",\r\n shippingAddress: \"false\",\r\n closed: ()=>{this.close2();} \r\n });\r\n\r\n }\r\n\r\n close2(){\r\n this.isSucessPay=!this.isSucessPay;\r\n }\r\n}","<div class=\"custom-dialog\">\r\n <div class=\"custom-close\" mat-dialog-close (click)=\"close()\">\r\n <fa-icon icon=\"times\" class=\"project-dialog\"></fa-icon>\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content class=\"project-dialogContent\" id=\"style-1\">\r\n\r\n <mat-card-title>\r\n <div class=\"text-center pb-1\">Subscription</div>\r\n </mat-card-title>\r\n\r\n <div class=\"login-page\" fxLayout=\"column\">\r\n <div fxFlex=\"50\" fxFlex.xs=\"100\"><label>Selected plan : {{selectedPlanName}} </label></div>\r\n <div fxLayout=\"row\" fxLayout.xs=\"column\" fxLayoutGap=\"10px\" fxLayoutGap.xs=\"0px\">\r\n <div fxFlex=\"100\" fxFlex.xs=\"100\">\r\n <mat-form-field class=\"full-width\">\r\n <input matInput [(ngModel)]=\"noOfPurchases\" placeholder=\"No.of purchases\" (change)=\"costCalculation()\"\r\n required>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div fxLayout=\"row\" fxLayout.xs=\"column\" fxLayoutGap=\"10px\" fxLayoutGap.xs=\"0px\">\r\n <div fxFlex=\"100\" fxFlex.xs=\"100\">\r\n <mat-form-field class=\"full-width\" *ngIf=\"!isNewSub\">\r\n <mat-select placeholder=\"Select a subscription type\" [(ngModel)]=\"planInterval\"\r\n [disabled]=\"subscriptionType =='year'\" (selectionChange)=\"costCalculation()\" required>\r\n <mat-option value=\"month\">Monthly</mat-option>\r\n <mat-option value=\"year\">Annually</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field class=\"full-width\" *ngIf=\"isNewSub\">\r\n <mat-select placeholder=\"Select a subscription type\" [(ngModel)]=\"planInterval\"\r\n (selectionChange)=\"costCalculation()\" required>\r\n <mat-option value=\"month\">Monthly</mat-option>\r\n <mat-option value=\"year\">Annually</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-1\">\r\n <button class=\"full-width mb-1 btn btn-block\" mat-raised-button color=\"primary\" (click)=\"pay()\"\r\n [disabled]=\"totalAmount == 0 || isDisable ||isSucessPay\"> Pay ${{totalAmount}}\r\n <i class=\"fa fa-spin fa-spinner\" *ngIf=\"isSucessPay\"></i>\r\n </button>\r\n </div>\r\n <!-- <ngx-ui-loader fgsSize=\"180\" [fgsType]=\"spinnerType\" color=\"primary\"></ngx-ui-loader> -->\r\n</div>","import { Component, OnInit, Inject, ViewChild, ViewChildren } from \"@angular/core\";\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatTabChangeEvent } from \"@angular/material/tabs\";\r\nimport { Router } from '@angular/router';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { PaymentService } from '../../services/payment.service';\r\nimport { PurchaseMoreLicensesComponent } from './purchase-more-licenses';\r\n\r\n@Component({\r\n selector: \"app-product-services-component\",\r\n templateUrl: \"./product-service.component.html\"\r\n})\r\n\r\nexport class ProductAndServicesComponent implements OnInit {\r\n\r\n\r\n selectedTab: string;\r\n selectedTabIndex: number;\r\n paymentDetails: any;\r\n isSubscriptionCancel: boolean = false;\r\n isAnyOperationIsInprogress: boolean = false;\r\n isFromRoute: boolean = false;\r\n totalNoOfActiveUsers: any = 0;\r\n totalNoOfPurchases: any = 0;\r\n isShowRenewal: boolean = false;\r\n productName: string = \"Snovasys\";\r\n isTrailValid: boolean = true;\r\n noOfDays: any = 0;\r\n company: any;\r\n renewalDate: any;\r\n isCancelled: boolean;\r\n subscriptionType: any;\r\n isLoading: boolean = true;\r\n paymentHistory : any;\r\n @ViewChildren(\"closeBookingPopup\") closeBookingPopup;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any,\r\n private toastr: ToastrService\r\n , private paymentService: PaymentService\r\n , public router: Router\r\n , private cookieService: CookieService,\r\n public dialog: MatDialog,) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n if (this.cookieService.check(LocalStorageProperties.CompanyDetails) && this.cookieService.check(LocalStorageProperties.CompanyId)) {\r\n this.company = JSON.parse(this.cookieService.get(LocalStorageProperties.CompanyDetails));\r\n this.noOfDays = this.company != null && this.company != undefined ? this.company.trailDays : 0;\r\n }\r\n this.getActiveUsersCount();\r\n this.getPurchasedLicensesCount();\r\n this.getPaymentHistory();\r\n }\r\n\r\n cancelSubscription() {\r\n this.paymentService.cancelSubscription().subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n this.toastr.success(\"Your subscription has been cancelled successfully\");\r\n this.isSubscriptionCancel = true;\r\n setTimeout(()=>{\r\n this.getPurchasedLicensesCount();\r\n this.getPaymentHistory();\r\n }, 2000);\r\n \r\n }\r\n else {\r\n this.toastr.error(responseData.apiResponseMessages[0].message);\r\n this.isSubscriptionCancel = false;\r\n }\r\n });\r\n }\r\n getActiveUsersCount() {\r\n this.paymentService.getActiveUsersCount().subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n this.totalNoOfActiveUsers = responseData.data;\r\n }\r\n });\r\n }\r\n\r\n getPurchasedLicensesCount() {\r\n this.isLoading = true;\r\n this.paymentService.getPurchasedLicensesCount().subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n if (responseData.data) {\r\n this.totalNoOfPurchases = responseData.data.purchasedLicensesCount;\r\n this.isShowRenewal = responseData.data.isShowRenewal;\r\n this.productName = responseData.data.purchaseType;\r\n this.isTrailValid = false;\r\n this.renewalDate = responseData.data.renewalDate;\r\n this.isCancelled = responseData.data.isCancelled;\r\n this.subscriptionType = responseData.data.subscriptionType;\r\n }\r\n else {\r\n this.isTrailValid = true;\r\n }\r\n }\r\n this.isLoading = false;\r\n });\r\n }\r\n\r\n navigateToSubscription() {\r\n this.router.navigate([\"/shell/payments-plans\"]);\r\n }\r\n\r\n purchaseMoreLicenses() {\r\n const dialogRef = this.dialog.open(PurchaseMoreLicensesComponent, {\r\n height: \"45%\",\r\n width: \"28%\",\r\n hasBackdrop: true,\r\n direction: \"ltr\",\r\n data: { noOfPurchases: this.totalNoOfPurchases, productName: this.productName, subscriptionType: this.subscriptionType },\r\n disableClose: true\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n if(result !=undefined && result.isReload == true){\r\n this.getPaymentHistory();\r\n this.getPurchasedLicensesCount();\r\n }\r\n });\r\n }\r\n navigateToPlans() {\r\n this.router.navigate([\"/shell/payments-plans\"]);\r\n }\r\n getPaymentHistory(){\r\n this.paymentService.getPaymentHistory().subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n this.paymentHistory = responseData.data\r\n }\r\n else {\r\n this.toastr.error(responseData.apiResponseMessages[0].message);\r\n }\r\n });\r\n }\r\n openpop(closeBookingPopup) {\r\n closeBookingPopup.openPopover();\r\n }\r\n close() {\r\n this.closeBookingPopup.forEach((p) => p.closePopover());\r\n}\r\n\r\n}\r\n","<div fxFlex fxFlex=\"100\">\r\n <h4 class=\"ml-1 mt-05\">Products & Services</h4>\r\n <hr>\r\n</div>\r\n<mat-card>\r\n <div style=\"height:fit-content;border: 1px solid #eceaea;margin: 0;padding: 0px 10px 0px 10px; background: aliceblue;\"\r\n fxLayout=\"row\">\r\n <div fxFlex=\"80\" style=\"padding-top: 15px !important;\">\r\n <span> Customize and enhance your plan with additional features.\r\n </span>\r\n </div>\r\n <div fxFlex=\"20\" style=\"text-align: right;\">\r\n <button mat-raised-button color=\"primary\" type=\"submit\" class=\"ml-05 mt-05 mb-05\"\r\n (click)=\"openpop(closeBookingPopup)\" [satPopoverAnchorFor]=\"feedTimeSheet\"\r\n #closeBookingPopup=\"satPopoverAnchor\">\r\n Customize\r\n </button>\r\n </div>\r\n </div>\r\n\r\n</mat-card>\r\n<mat-card *ngIf=\"!isLoading\">\r\n <div style=\"height: fit-content;border: 1px solid #eceaea;margin: 0;padding: 0px 10px 0px 10px;\" fxLayout=\"row\"\r\n *ngIf=\"isCancelled\">\r\n <div fxFlex=\"80\" style=\"padding-top: 15px !important;\">\r\n <span> We are sorry to see you go. Thank you for letting us to be a part of your growth so far. We'll miss\r\n you around here! If you decide you'd like to continue using this product, you can renew at any time by\r\n clicking on the subscribe button. We hope to see you around! Thank you.\r\n </span>\r\n </div>\r\n <div fxFlex=\"20\" style=\"text-align: right;\">\r\n <button mat-raised-button color=\"primary\" type=\"submit\" class=\"ml-05 mt-05\"\r\n (click)=\"navigateToSubscription()\">\r\n Subscribe\r\n </button>\r\n </div>\r\n </div>\r\n <div style=\"height: fit-content;border: 1px solid #eceaea;margin: 0;padding: 0px 10px 0px 10px; \" fxLayout=\"row\"\r\n *ngIf=\"isTrailValid\">\r\n <div fxFlex=\"80\" style=\"padding-top: 15px !important;\">\r\n <span> It looks like you’ve already seen some great results with our Product. This is a great time to\r\n consider taking a look at our different plans, so that you can take full advantage of our Product. As\r\n your trail is going to expire in {{noOfDays}} days, please have a look at our different plans and\r\n subscribe to them.\r\n </span>\r\n </div>\r\n <div fxFlex=\"20\" style=\"text-align: right;\">\r\n <button mat-raised-button color=\"primary\" type=\"submit\" class=\"ml-05 mt-05\"\r\n (click)=\"navigateToSubscription()\">\r\n Subscribe\r\n </button>\r\n </div>\r\n </div>\r\n <div style=\"height: fit-content;border: 1px solid #eceaea;margin: 0;padding: 15px;\" fxLayout=\"row\"\r\n *ngIf=\"isTrailValid == false && !isCancelled\">\r\n\r\n <div fxFlex=\"70\">\r\n <label><b>{{productName}}</b></label><br>\r\n <span>{{totalNoOfActiveUsers}} of {{totalNoOfPurchases}} Users assigned</span><br>\r\n <span>Automatically renews on {{renewalDate | date}}. <a (click)=\"cancelSubscription()\"\r\n style=\"cursor: pointer; color: #337ab7 !important; text-decoration: none !important; \">Cancel\r\n subscription</a></span>\r\n </div>\r\n <div fxFlex=\"30\" style=\"text-align: right;\">\r\n <button mat-raised-button color=\"primary\" type=\"submit\" class=\"ml-05 mt-05\" *ngIf=\"!isCancelled\"\r\n (click)=\"purchaseMoreLicenses()\">\r\n Purchase more licenses\r\n </button>\r\n <button mat-raised-button color=\"primary\" type=\"submit\" class=\"ml-05 mt-05\" *ngIf=\"!isCancelled\"\r\n (click)=\"navigateToPlans()\">\r\n Change Plan\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div style=\"height: fit-content;border: 1px solid #eceaea;margin: 0;padding: 0px 10px 0px 10px;\" fxLayout=\"row\"\r\n *ngFor=\"let history of paymentHistory\">\r\n <div fxFlex=\"70\" style=\"padding-top: 15px !important;\">\r\n <table style=\"width: 100%;\">\r\n <tr fxLayout=\"row\">\r\n <span style=\"font-weight: bold;\">Subscription term : {{history.startTime | date}} to\r\n {{history.endTime | date}}</span>\r\n </tr>\r\n <tr fxLayout=\"row\" *ngIf=\"!history.isUpdate\">\r\n <td fxFlex=\"80\"><span>{{history.purchaseType}} ({{history.noofpurchasedlicences}} Users Included)<br>\r\n Billed every {{history.subscriptionType}} </span>\r\n </td>\r\n <td fxFlex=\"20\"> £{{history.totalAmountPaid}}</td>\r\n </tr>\r\n <tr fxLayout=\"row\" *ngIf=\"history.isUpdate\">\r\n <td fxFlex=\"80\"><span>{{history.purchaseType}} ({{history.originalPurchases}} Users Included)\r\n </span>\r\n </td>\r\n <td fxFlex=\"20\">\r\n £{{history.totalAmountPaid / history.noofpurchasedlicences * history.originalPurchases }}</td>\r\n </tr>\r\n <tr fxLayout=\"row\" *ngIf=\"history.isUpdate\">\r\n <td fxFlex=\"80\"><span>{{history.purchaseType}} Additional Users\r\n ({{history.noofpurchasedlicences - history.originalPurchases}} Users)</span>\r\n </td>\r\n <td fxFlex=\"20\">\r\n £{{history.totalAmountPaid / history.noofpurchasedlicences * ( history.noofpurchasedlicences - history.originalPurchases)}}\r\n </td>\r\n </tr>\r\n <tr fxLayout=\"row\" *ngIf=\"history.isUpdate\">\r\n <td fxFlex=\"80\">{{history.purchaseType}} Total ({{history.noofpurchasedlicences}} Users)<br>\r\n <span style=\"font-size: 14px;\"> Billed every {{history.subscriptionType}}</span>\r\n </td>\r\n <td fxFlex=\"20\"> £{{history.totalAmountPaid}}</td>\r\n </tr>\r\n <tr *ngIf=\"history.isCancelled\">\r\n <span>Subscription was cancelled at {{history.cancelledDate | date}}</span>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>\r\n\r\n</mat-card>\r\n<sat-popover #feedTimeSheet [autoFocus]=\"false\" hasBackdrop backdropClass=\"backdrop-color\" [restoreFocus]=\"false\"\r\n [interactiveClose]=\"false\" scrollStrategy=\"reposition\" verticalAlign=\"below\" horizontalAlign=\"before\">\r\n <mat-card class=\"filter-data p-0\" style=\"min-height: 150px;\">\r\n\r\n <div class=\"custom-dialog\">\r\n <div class=\"custom-close ml-lg-n4 mt-0 mt-lg-n4 ml-n3 \" mat-dialog-close (click)=\"close()\">\r\n <fa-icon icon=\"times\" class=\"project-dialog\"></fa-icon>\r\n </div>\r\n </div>\r\n <mat-card-title class=\"text-center\">\r\n <div class=\"card-title-text mat-bg-primary p-05 mb-1\">\r\n <h4 class=\"mt-05\"> Customize site</h4>\r\n </div>\r\n\r\n </mat-card-title>\r\n <mat-card-content class=\"card-content\">\r\n <div fxFlex=\"100\" class=\"mt-2\" style=\"text-align: center;\">\r\n If there is need to customize the site, then please call 0044-7944144944.\r\n </div>\r\n <!-- <div fxFlex=\"100\" class=\"mt-2\" style=\"text-align: center;\">\r\n <button mat-raised-button class=\"mr-1\" color=\"primary\" (click)=\"close()\" type=\"submit\">\r\n No\r\n </button>\r\n </div> -->\r\n </mat-card-content>\r\n </mat-card>\r\n</sat-popover>","import { Component, OnInit, Inject, ViewChild, HostListener, ChangeDetectorRef } from \"@angular/core\";\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatTabChangeEvent } from \"@angular/material/tabs\";\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\nimport { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { CompanyModel } from '../../models/company-model';\r\nimport { CommonService } from '../../services/common-used.service';\r\n\r\n@Component({\r\n selector: \"app-company-information-component\",\r\n templateUrl: \"./company-information.html\"\r\n})\r\n\r\nexport class CompanyInformationComponent implements OnInit {\r\n\r\n selectedTab: string;\r\n selectedTabIndex: number;\r\n companyDetails: any;\r\n companyId: any;\r\n company: any;\r\n isAnyOperationIsInprogress: boolean = false;\r\n isFromRoute: boolean = false;\r\n isCompanyname: boolean;\r\n isVat: boolean;\r\n isPrimaryAdd: boolean;\r\n vat: any;\r\n primaryAdd: string;\r\n companyName: string;\r\n editVat: boolean = false;\r\n show: boolean;\r\n validationMsg: string;\r\n showErorr: boolean;\r\n isEditAddress: boolean = false;\r\n primaryCompanyAddress: any;\r\n exportDataLoading: boolean = false;\r\n isProgress: boolean = false;\r\n isCompanyEdit: boolean = true;\r\n isCompanyAddEdit: boolean = false;\r\n isCompanyVatEdit: boolean;\r\n idFromEdit: boolean;\r\n isFromEdit: boolean;\r\n isvatFromEdit: boolean;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any, private cdRef: ChangeDetectorRef, private cookieService: CookieService, private commonService: CommonService, private toastr: ToastrService,) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.companyDetails = this.cookieService.get(LocalStorageProperties.CompanyId);\r\n this.companyId = this.companyDetails;\r\n this.companyName = \"\";\r\n this.vat = \"\";\r\n this.primaryCompanyAddress = \"\";\r\n this.getCompanyById();\r\n }\r\n getCompanyById() {\r\n this.commonService.getCompanyById(this.companyId).subscribe((response: any) => {\r\n this.company = response.data;\r\n this.isCompanyname\r\n this.companyName = this.company.companyName;\r\n this.vat = this.company.vat;\r\n this.primaryCompanyAddress = this.company.primaryCompanyAddress = null ? '' : this.company.primaryCompanyAddress;\r\n this.isVat = this.vat != null ? true : false;\r\n this.isVat = this.vat == '' ? false : true;\r\n this.isPrimaryAdd = this.company.primaryCompanyAddress != null ? true : false;\r\n this.isPrimaryAdd = this.company.primaryCompanyAddress == '' ? false : true;\r\n this.isFromEdit = !this.isPrimaryAdd;\r\n this.isvatFromEdit = !this.isVat;\r\n });\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n getCompany() {\r\n this.commonService.getCompanyById(this.companyId).subscribe((response: any) => {\r\n this.company = response.data;\r\n this.companyName = this.company.companyName;\r\n this.vat = this.company.vat;\r\n this.primaryCompanyAddress = this.company.primaryCompanyAddress = null ? '' : this.company.primaryCompanyAddress;\r\n\r\n });\r\n this.cdRef.detectChanges();\r\n }\r\n getCompanyAdd() {\r\n this.commonService.getCompanyById(this.companyId).subscribe((response: any) => {\r\n this.company = response.data;\r\n this.companyName = this.company.companyName;\r\n this.vat = this.company.vat;\r\n if(this.primaryCompanyAddress){\r\n this.isPrimaryAdd=true;\r\n }\r\n this.primaryCompanyAddress = this.company.primaryCompanyAddress = null ? '' : this.company.primaryCompanyAddress;\r\n\r\n });\r\n this.cdRef.detectChanges();\r\n }\r\n getCompanyVat() {\r\n this.commonService.getCompanyById(this.companyId).subscribe((response: any) => {\r\n this.company = response.data;\r\n this.companyName = this.company.companyName;\r\n this.vat = this.company.vat;\r\n if(this.vat){\r\n this.isVat=true;\r\n }\r\n this.primaryCompanyAddress = this.company.primaryCompanyAddress = null ? '' : this.company.primaryCompanyAddress;\r\n\r\n });\r\n this.cdRef.detectChanges();\r\n }\r\n addvat() {\r\n this.editVat = true;\r\n this.isvatFromEdit = false;\r\n this.isVat = false;\r\n this.vat = this.vat;\r\n this.isCompanyVatEdit = true;\r\n }\r\n Editvat() {\r\n this.isvatFromEdit = true;\r\n this.isvatFromEdit = false;\r\n this.isCompanyVatEdit = true;\r\n this.vat = this.vat;\r\n this.isVat = false;\r\n this.editVat = true;\r\n }\r\n cancelCompanyVat() {\r\n this.isCompanyVatEdit = false;\r\n this.isvatFromEdit = false;\r\n this.editVat = false;\r\n this.getCompanyById();\r\n }\r\n Save() {\r\n this.exportDataLoading = true;\r\n this.isProgress = true;\r\n const companyModel = new CompanyModel();\r\n companyModel.vAT = this.vat;\r\n companyModel.primaryAddress = this.primaryCompanyAddress;\r\n companyModel.companyName = this.companyName;\r\n companyModel.companyId = this.companyId;\r\n companyModel.key = \"true\";\r\n this.commonService.updateCompanyDetails(companyModel).subscribe((response: any) => {\r\n var res = response.data;\r\n this.exportDataLoading = false;\r\n this.isProgress = false;\r\n if (res == 'CompanyNameWithThisNameAlreadyExists') {\r\n this.showErorr = true;\r\n this.show = false;\r\n this.validationMsg = \"Company name is already exists\";\r\n // this.toastr.error(this.validationMsg );\r\n this.cdRef.detectChanges();\r\n this.isCompanyname = true;\r\n this.isCompanyEdit = false;\r\n }\r\n else if (res == 'CompanyNameShouldNotBeNull') {\r\n this.showErorr = true;\r\n this.isCompanyname = true;\r\n this.isCompanyEdit = false;\r\n this.show = false;\r\n this.validationMsg = \"Company name should be null\";\r\n // this.toastr.error(this.validationMsg );\r\n this.cdRef.detectChanges();\r\n this.isCompanyname = true;\r\n } else {\r\n this.isCompanyname = false;\r\n this.isCompanyEdit = true;\r\n this.showErorr = false;\r\n this.toastr.success(\"Saved!\")\r\n this.getCompany();\r\n this.cdRef.detectChanges();\r\n }\r\n });\r\n }\r\n Savevat() {\r\n if(this.vat){\r\n this.exportDataLoading = true;\r\n this.isProgress = true;\r\n const companyModel = new CompanyModel();\r\n this.editVat = false;\r\n companyModel.vAT = this.vat;\r\n companyModel.primaryAddress = this.primaryCompanyAddress;\r\n companyModel.companyName = this.companyName;\r\n companyModel.companyId = this.companyId;\r\n companyModel.key = \"true\";\r\n this.commonService.updateCompanyDetails(companyModel).subscribe((response: any) => {\r\n this.isCompanyVatEdit = false;\r\n this.toastr.success(\"Saved!\");\r\n this.isVat = false;\r\n this.getCompanyVat();\r\n this.cdRef.detectChanges();\r\n\r\n });\r\n }\r\n }\r\n Saveadd() {\r\n if(this.primaryCompanyAddress){\r\n this.exportDataLoading = true;\r\n this.isProgress = true;\r\n const companyModel = new CompanyModel();\r\n this.isEditAddress = false;\r\n companyModel.vAT = this.vat;\r\n companyModel.primaryAddress = this.primaryCompanyAddress;\r\n companyModel.companyName = this.companyName;\r\n companyModel.companyId = this.companyId;\r\n companyModel.key = \"true\";\r\n this.commonService.updateCompanyDetails(companyModel).subscribe((response: any) => {\r\n this.isCompanyAddEdit = false;\r\n this.toastr.success(\"Saved!\")\r\n this.isPrimaryAdd = false;\r\n this.getCompanyAdd();\r\n this.cdRef.detectChanges();\r\n\r\n });\r\n }\r\n }\r\n cancelCompany() {\r\n this.isCompanyEdit = true;\r\n this.isCompanyname = false;\r\n }\r\n addAddress() {\r\n\r\n this.isPrimaryAdd = false;\r\n this.isCompanyAddEdit = true;\r\n this.isFromEdit = false;\r\n this.isEditAddress = true;\r\n this.primaryCompanyAddress = this.primaryCompanyAddress;\r\n }\r\n editAddress() {\r\n this.isFromEdit = false;\r\n this.isPrimaryAdd = false;\r\n this.isCompanyAddEdit = true;\r\n this.isEditAddress = true;\r\n this.primaryCompanyAddress = this.primaryCompanyAddress;\r\n }\r\n cancel() {\r\n\r\n }\r\n cancelCompanyadd() {\r\n this.isCompanyAddEdit = false;\r\n this.isEditAddress = false;\r\n this.getCompanyById();\r\n\r\n }\r\n editCompany() {\r\n this.isCompanyname = true;\r\n this.isCompanyEdit = false;\r\n this.companyName = this.companyName;\r\n this.show = false;\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n companynameclick() {\r\n if (this.companyName != null && this.companyName != '') {\r\n this.companyName = this.companyName;\r\n this.show = false;\r\n this.showErorr = false;\r\n this.exportDataLoading = false;\r\n }\r\n else {\r\n this.exportDataLoading = true;\r\n this.show = true;\r\n this.showErorr = true;\r\n }\r\n }\r\n @HostListener('document:mouseover', ['$event'])\r\n mouseover(event) {\r\n if (event.target.matches('.editor-div')) {\r\n this.companynameclick();\r\n }\r\n }\r\n}\r\n","<div fxFlex fxFlex=\"100\">\r\n <h4 class=\"ml-1 mt-05\">Company Information</h4>\r\n <hr>\r\n</div>\r\n<mat-card>\r\n <div style=\"padding: 15px;\" fxLayout=\"row\">\r\n <div fxFlex=\"70\">\r\n <label><b>Company name</b></label><br>\r\n <div *ngIf=\"!isCompanyname\">\r\n\r\n <input autocomplete=\"off\" [(ngModel)]=\"companyName\" value=\"{{companyName}}\" matInput\r\n placeholder=\"Company Name\" readonly required>\r\n </div>\r\n <div *ngIf=\"isCompanyname\">\r\n <mat-form-field>\r\n <input autocomplete=\"off\" class=\"editor-div\" [(ngModel)]=\"companyName\" value=\"{{companyName}}\"\r\n (click)=\"companynameclick()\" matInput placeholder=\"Company Name\" required>\r\n <mat-error *ngIf=\"show\"><label>Please enter the company name</label></mat-error>\r\n </mat-form-field>\r\n <mat-error *ngIf=\"showErorr&&!show\"><label>Company name is already exists</label></mat-error>\r\n </div>\r\n\r\n </div>\r\n <div fxFlex=\"30\" style=\"text-align: right;\">\r\n <button *ngIf=\"isCompanyEdit\" mat-icon-button color=\"primary\" (click)=\"editCompany()\" type=\"submit\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button *ngIf=\"!isCompanyEdit\" mat-icon-button color=\"primary\" type=\"button\" (click)=\"Save()\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button *ngIf=\"!isCompanyEdit\" mat-icon-button type=\"button\" (click)=\"cancelCompany()\">\r\n <fa-icon icon=\"times\"></fa-icon>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n <mat-divider></mat-divider>\r\n <div style=\"padding: 15px;\" fxLayout=\"row\">\r\n <div fxFlex=\"70\">\r\n <label><b>Primary company address </b></label>\r\n <div *ngIf=\"!isEditAddress\">\r\n\r\n\r\n <textarea matInput style=\"max-height: 200px;width:300px\" [(ngModel)]=\"primaryCompanyAddress\" rows=\"3\"\r\n placeholder=\"Primary company address\" readonly></textarea>\r\n\r\n </div>\r\n <div *ngIf=\"isEditAddress\">\r\n <mat-form-field style=\"width:300px\">\r\n <textarea style=\"max-height: 200px;\" matInput [(ngModel)]=\"primaryCompanyAddress\" rows=\"3\"\r\n placeholder=\"Primary company address\"></textarea>\r\n </mat-form-field>\r\n </div>\r\n <br>\r\n </div>\r\n\r\n <div fxFlex=\"30\" style=\"text-align: right;\">\r\n\r\n <button *ngIf=\"isPrimaryAdd\" mat-icon-button color=\"primary\" (click)=\"editAddress()\" type=\"submit\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button *ngIf=\"!isPrimaryAdd && isFromEdit\" mat-icon-button color=\"primary\" (click)=\"addAddress()\"\r\n type=\"submit\">\r\n <mat-icon>add</mat-icon>\r\n </button>\r\n <button *ngIf=\"isCompanyAddEdit\" mat-icon-button color=\"primary\" type=\"button\" (click)=\"Saveadd()\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button *ngIf=\"isCompanyAddEdit\" mat-icon-button type=\"button\" (click)=\"cancelCompanyadd()\">\r\n <fa-icon icon=\"times\"></fa-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <mat-divider></mat-divider>\r\n <div style=\"padding: 15px;\" fxLayout=\"row\">\r\n <div fxFlex=\"70\">\r\n <label><b>VAT</b></label><br>\r\n <div *ngIf=\"!editVat\">\r\n\r\n <input autocomplete=\"off\" [(ngModel)]=\"vat\" value=\"{{vat}}\" matInput placeholder=\"VAT\" readonly>\r\n\r\n </div>\r\n <div *ngIf=\"editVat\">\r\n <mat-form-field>\r\n <input autocomplete=\"off\" [(ngModel)]=\"vat\" value=\"{{vat}}\" matInput placeholder=\"VAT\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div fxFlex=\"30\" style=\"text-align: right;\">\r\n <button *ngIf=\"isVat\" mat-icon-button color=\"primary\" (click)=\"Editvat()\" type=\"submit\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button *ngIf=\"!isVat && isvatFromEdit\" mat-icon-button color=\"primary\" (click)=\"addvat()\" type=\"submit\">\r\n <mat-icon>add</mat-icon>\r\n </button>\r\n <button *ngIf=\"isCompanyVatEdit\" mat-icon-button color=\"primary\" type=\"button\" (click)=\"Savevat()\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button *ngIf=\"isCompanyVatEdit\" mat-icon-button type=\"button\" (click)=\"cancelCompanyVat()\">\r\n <fa-icon icon=\"times\"></fa-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <!-- <div fxFlex=\"100\" class=\"mt-2\" style=\"text-align: center;\">\r\n <button mat-raised-button [disabled]=\"exportDataLoading\" class=\"mr-1\" color=\"primary\" (click)=\"Save()\"\r\n type=\"submit\">Save\r\n </button>\r\n \r\n </div> -->\r\n</mat-card>","import { Component, OnInit, Inject, ViewChild, ChangeDetectorRef } from \"@angular/core\";\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatTabChangeEvent } from \"@angular/material/tabs\";\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\nimport { InvoiceOutputModel } from '../../models/invoiceOutput-model';\r\nimport { PaymentService } from '../../services/payment.service';\r\n\r\n@Component({\r\n selector: \"app-transactions-component\",\r\n templateUrl: \"./transactions.component.html\"\r\n})\r\n\r\nexport class TransactionsComponent implements OnInit {\r\n\r\n\r\n selectedTab: string = \"Invoices\";\r\n selectedTabIndex: number;\r\n paymentDetails : any;\r\n isAnyOperationIsInprogress : boolean = false;\r\n isFromRoute : boolean = false;\r\n invoiceDetails : InvoiceOutputModel;\r\n invoiceList : InvoiceOutputModel[] = [];\r\n invoices : any;\r\n payments : any;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any\r\n ,private paymentService: PaymentService\r\n ,private toastr: ToastrService,\r\n private cdRef: ChangeDetectorRef) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getAllTransactions();\r\n }\r\n onTabClick(selectedName){\r\n this.selectedTab = selectedName;\r\n this.getAllTransactions();\r\n }\r\n\r\n getAllTransactions(){\r\n this.invoices = [];\r\n this.paymentService.getAllTransactions(this.selectedTab).subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n this.invoices = responseData.data;\r\n }\r\n else {\r\n this.toastr.error(responseData.apiResponseMessages[0].message);\r\n }\r\n });\r\n }\r\n\r\n downloadInvoice(pdfLink){\r\n window.open(pdfLink);\r\n }\r\n \r\n}\r\n","<div fxLayout=\"row wrap\" fxFlex fxFlex=\"100\">\r\n <div fxFlex=\"100\" fxFlex.gt-sm=\"20\" fxFlex.gt-md=\"300px\">\r\n <mat-card class=\"profile-sidebar pb-0 pt-0 custom-box w3rt-card organisation-management mb-0 mt-0\">\r\n <div class=\"profile-nav\">\r\n <mat-nav-list class=\"pt-0\">\r\n <ng-container>\r\n <mat-list-item (click)=\"onTabClick('Invoices')\" class=\"role-card\" routerLinkActive=\"list-item-active\">\r\n Invoices\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n <ng-container>\r\n <mat-list-item (click)=\"onTabClick('Payments')\" class=\"role-card\" routerLinkActive=\"list-item-active\">\r\n Payments\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n <ng-container>\r\n <mat-list-item (click)=\"onTabClick('All')\" class=\"role-card\" routerLinkActive=\"list-item-active\">\r\n All\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n </mat-nav-list>\r\n </div>\r\n </mat-card>\r\n </div>\r\n\r\n <div fxFlex=\"100\" fxFlex.gt-sm=\"80\" fxFlex.gt-md=\"calc(100% - 300px)\"\r\n class=\"organisation-pages organisation-pages-1\">\r\n <div fxFlex fxFlex=\"100\">\r\n <h4 class=\"ml-1 mt-05\">{{selectedTab}}</h4>\r\n <hr>\r\n <div class=\"activity-data no-drag accessible-ip-height\">\r\n <ngx-datatable class=\"btrak\" [columnMode]=\"'flex'\"\r\n [headerHeight]=\"35\" [footerHeight]=\"50\" [rowHeight]=\"50\" [limit]=\"10\" [rows]=\"invoices\"\r\n [scrollbarH]=\"true\" [virtualization]=\"false\"\r\n >\r\n <ngx-datatable-column minWidth=\"150\" name=\"DATE ISSUED\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"createdDateTime\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.createdDateTime | date }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"DETAILS\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"details\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n <span> <a mat-button color=\"accent\" class=\"pl-0\" (click)=\"downloadInvoice(row.pdfUrl)\">{{ row?.details }}</a></span> \r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"PRODUCT(S)\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"product\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.product }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"AMOUNT\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"amount\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.amount }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"STATUS\" [flexGrow]=\"1\"\r\n [sortable]=\"true\" prop=\"status\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.status }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n </ngx-datatable>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { Component, OnInit, Inject, ViewChild } from \"@angular/core\";\r\nimport { MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { StoreManagementService } from '@snovasys/snova-document-management';\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\n\r\n@Component({\r\n selector: \"app-document-component\",\r\n templateUrl: \"./document.component.html\"\r\n})\r\n\r\nexport class DocumentComponent implements OnInit {\r\n\r\n\r\n selectedTab: string;\r\n selectedTabIndex: number;\r\n paymentDetails: any;\r\n isAnyOperationIsInprogress: boolean = false;\r\n isFromRoute: boolean = false;\r\n dashboardUpdateInProgress: boolean;\r\n constructor(private storeManagementService: StoreManagementService, @Inject(MAT_DIALOG_DATA) public data: any) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.paymentDetails = [\r\n { documentName: 'Terms of Services', status: 'Uploaded', type: 'Pdf', updatedAt: '10-Dec-2020' },\r\n ];\r\n }\r\n\r\n\r\n downloadFile() {\r\n this.dashboardUpdateInProgress = true;\r\n let file = \"https://bviewstorage.blob.core.windows.net/f94916c1-6742-49bd-90de-344662b42704/projects/0a41f08e-f35e-4b41-a9e4-a4c43839abef/SnovasysTerms-5a7e4877-a7bb-47e3-b464-4704b547c937.pdf\"\r\n let obj = file;\r\n const parts = obj.split(\"/\");\r\n const loc = parts.pop();\r\n this.downloadPdf(obj);\r\n }\r\n\r\n downloadPdf(pdf) {\r\n\r\n const parts = pdf.split(\"/\");\r\n const loc = parts.pop();\r\n this.storeManagementService.downloadFile(pdf).subscribe((responseData: any) => {\r\n\r\n const linkSource = 'data:application/pdf;base64,' + responseData;\r\n const downloadLink = document.createElement(\"a\");\r\n downloadLink.href = linkSource;\r\n downloadLink.download = loc.split(\".\")[0] + '-' + '-File.pdf';\r\n this.dashboardUpdateInProgress = false;\r\n downloadLink.click();\r\n })\r\n }\r\n\r\n\r\n}\r\n","<div fxFlex fxFlex=\"100\">\r\n <h4 class=\"ml-1 mt-05\">Documents</h4>\r\n <hr>\r\n</div>\r\n<div class=\"activity-data no-drag accessible-ip-height\">\r\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\" *ngIf=\"dashboardUpdateInProgress\">\r\n </mat-progress-bar>\r\n <ngx-datatable class=\"btrak\" [ngClass]=\"isFromRoute ? 'full-height' : ''\" [columnMode]=\"'flex'\" [headerHeight]=\"35\"\r\n [footerHeight]=\"50\" [rowHeight]=\"50\" [limit]=\"10\" [rows]=\"paymentDetails\"\r\n [loadingIndicator]=\"isAnyOperationIsInprogress\" [scrollbarH]=\"true\" [virtualization]=\"false\"\r\n [messages]=\"{emptyMessage:('NODATATODISPLAY' | translate), totalMessage: 'TOTAL' | translate}\">\r\n <ngx-datatable-column minWidth=\"150\" name=\"NAME\" [flexGrow]=\"1\" [sortable]=\"true\" prop=\"documentName\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n <a class=\"aclass pl-0\" style=\"text-decoration: underline !important;color: #2a84c0 !important;\"\r\n (click)=\"downloadFile()\">{{ row?.documentName }}</a>\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"UPDATED AT\" [flexGrow]=\"1\" [sortable]=\"true\" prop=\"updatedAt\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.updatedAt }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"TYPE\" [flexGrow]=\"1\" [sortable]=\"true\" prop=\"type\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.type }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"STATUS\" [flexGrow]=\"1\" [sortable]=\"false\" prop=\"status\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.status }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n </ngx-datatable>\r\n</div>","import { Component, OnInit, Inject, ViewChild } from \"@angular/core\";\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatTabChangeEvent } from \"@angular/material/tabs\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\n\r\n@Component({\r\n selector: \"app-account.component\",\r\n templateUrl: \"./account.component.html\"\r\n})\r\n\r\nexport class AccountAndBillingComponent implements OnInit {\r\n\r\n\r\n selectedTab: string;\r\n selectedTabIndex: number;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any) {\r\n \r\n }\r\n\r\n ngOnInit() {\r\n \r\n this.selectedTabIndex = 1;\r\n this.selectedTab = \"Products & Services\";\r\n }\r\n\r\n onTabClick(event: MatTabChangeEvent) {\r\n if (event.tab.textLabel.includes(\"Products & Services\")) {\r\n this.selectedTab = \"Products & Services\";\r\n }\r\n else if (event.tab.textLabel.includes(\"Company Info\")) {\r\n this.selectedTab = \"Company Info\";\r\n }\r\n else if (event.tab.textLabel.includes(\"Transactions\")) {\r\n this.selectedTab = \"Transactions\";\r\n }\r\n else if (event.tab.textLabel.includes(\"Documents\")) {\r\n this.selectedTab = \"Documents\";\r\n }\r\n else if (event.tab.textLabel.includes(\"Payment Method\")) {\r\n this.selectedTab = \"Payment Method\";\r\n }\r\n\r\n }\r\n\r\n}\r\n","<div fxLayout=\"row wrap\">\r\n <div class=\"p-02 full-width project-statuslist projectStatus-page projectStatus-page-header\" fxLayout=\"row wrap\">\r\n <div fxFlex>\r\n <mat-tab-group class=\"projectStatus-tabs project-tabs-container\" [selectedIndex]=\"selectedTabIndex\"\r\n (selectedTabChange)=\"onTabClick($event)\" [@.disabled]=\"true\">\r\n <mat-tab label=\"empty\">\r\n </mat-tab>\r\n <mat-tab label=\"Products & Services\">\r\n <ng-template mat-tab-label>\r\n Products & Services\r\n </ng-template>\r\n </mat-tab>\r\n <mat-tab label=\"Company Info\">\r\n <ng-template mat-tab-label>\r\n Company Info\r\n </ng-template>\r\n </mat-tab>\r\n <mat-tab label=\"Transactions\">\r\n <ng-template mat-tab-label>\r\n Transactions\r\n </ng-template>\r\n </mat-tab>\r\n <mat-tab label=\"Documents\">\r\n <ng-template mat-tab-label>\r\n Documents\r\n </ng-template>\r\n </mat-tab>\r\n <!-- <mat-tab label=\"Payment Method\">\r\n <ng-template mat-tab-label>\r\n Payment Method\r\n </ng-template>\r\n </mat-tab> -->\r\n </mat-tab-group>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"selectedTab == 'Products & Services'\">\r\n <app-product-services-component fxLayout=\"column\"></app-product-services-component>\r\n</div>\r\n<div *ngIf=\"selectedTab == 'Company Info'\">\r\n <app-company-information-component fxLayout=\"column\"></app-company-information-component>\r\n</div>\r\n<div *ngIf=\"selectedTab == 'Transactions'\">\r\n <app-transactions-component></app-transactions-component>\r\n</div>\r\n<div *ngIf=\"selectedTab == 'Documents'\">\r\n <app-document-component fxLayout=\"column\"></app-document-component>\r\n</div>\r\n<!-- <div *ngIf=\"selectedTab == 'Payment Method'\">\r\n <app-payment-method-component></app-payment-method-component>\r\n</div> -->","import { Component, OnInit, Inject, ViewChild } from \"@angular/core\";\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatTabChangeEvent } from \"@angular/material/tabs\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\n\r\n@Component({\r\n selector: \"app-payment-method-component\",\r\n templateUrl: \"./payment-method.component.html\"\r\n})\r\n\r\nexport class PaymentMethodComponent implements OnInit {\r\n\r\n\r\n selectedTab: string;\r\n selectedTabIndex: number;\r\n paymentDetails : any;\r\n isAnyOperationIsInprogress : boolean = false;\r\n isFromRoute : boolean = false;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n\r\n}\r\n","<div fxFlex fxFlex=\"100\">\r\n <h4 class=\"ml-1 mt-05\">Payment method</h4>\r\n <hr>\r\n</div>\r\n<div class=\"activity-data no-drag accessible-ip-height\">\r\n <ngx-datatable class=\"btrak\" [ngClass]=\"isFromRoute ? 'full-height' : ''\" [columnMode]=\"'flex'\"\r\n [headerHeight]=\"35\" [footerHeight]=\"50\" [rowHeight]=\"50\" [limit]=\"10\" [rows]=\"paymentDetails\"\r\n [loadingIndicator]=\"isAnyOperationIsInprogress\" [scrollbarH]=\"true\" [virtualization]=\"false\"\r\n [messages]=\"{emptyMessage:('NODATATODISPLAY' | translate), totalMessage: 'TOTAL' | translate}\">\r\n <ngx-datatable-column minWidth=\"150\" name=\"NAME\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"documentName\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.documentName }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"UPDATED AT\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"updatedAt\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.updatedAt }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"TYPE\"\r\n [flexGrow]=\"1\" [sortable]=\"true\" prop=\"type\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n {{ row?.type }}\r\n </ng-template>\r\n </ngx-datatable-column>\r\n <ngx-datatable-column minWidth=\"150\" name=\"STATUS\" [flexGrow]=\"1\"\r\n [sortable]=\"false\">\r\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\r\n <button class=\"text-center\" title=\"Processed\"\r\n \r\n mat-icon-button>\r\n </button>\r\n </ng-template>\r\n </ngx-datatable-column>\r\n </ngx-datatable>\r\n</div>","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, FormGroupDirective, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PaymentService } from '../../services/payment.service';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\nimport { MatOption } from \"@angular/material/core\";\r\nimport { MatTabChangeEvent } from \"@angular/material/tabs\";\r\nimport { PurchaseMoreLicensesComponent } from './purchase-more-licenses';\r\n\r\n@Component({\r\n selector: 'app-company-plans',\r\n templateUrl: './company-plans.component.html',\r\n styleUrls: ['./company-plans.component.css']\r\n})\r\nexport class CompanyPlansComponent implements OnInit {\r\n selectedIndex: any = 1;\r\n subscriptionForm: FormGroup;\r\n selectedPlanName: any;\r\n totalAmount: any = '0';\r\n totalNoOfActiveUsers: any = 0;\r\n companyMainLogo: any = \"https://bviewstorage.blob.core.windows.net/6671cd0d-5b91-4044-bdcc-e1f201c086c5/projects/d72d1c2f-dfbe-4d48-9605-cd3b7e38ed17/Main-Logo-9277cc4b-0c1f-4093-a917-1a65e874b3c9.png\";\r\n monthlyCheck: boolean = true;\r\n yearlyCheck: boolean = false;\r\n standardCostWithOutDiscount: any = 3;\r\n premiumCostWithOutDiscount: any = 5;\r\n enterpriseCostWithOutDiscount: any = 10;\r\n standardCost: any = 3;\r\n premiumCost: any = 5;\r\n enterpriseCost: any = 10;\r\n planText: any = '/mo/user';\r\n showAnnual: boolean = false;\r\n planInterval: any;\r\n isLoggedInUser: boolean = false;\r\n subscriptionType : any;\r\n isCancelled : boolean;\r\n renewalDate : any;\r\n noOfPurchases : any;\r\n isShowCurrentPlan : any;\r\n constructor(private toastr: ToastrService,\r\n private router: Router,\r\n private cookieService: CookieService\r\n ,private paymentService: PaymentService,\r\n public dialog: MatDialog,) { }\r\n\r\n ngOnInit() {\r\n this.totalNoOfActiveUsers = 0;\r\n this.totalAmount = 0;\r\n this.monthlyCheck = true;\r\n this.planInterval = 'month';\r\n this.yearlyCheck = false;\r\n this.getPurchasedLicensesCount();\r\n this.getActiveUsersCount();\r\n }\r\n \r\n changeEvent(plan) {\r\n if(this.subscriptionType == \"year\" && plan == 'month' && this.isShowCurrentPlan){\r\n this.toastr.warning(\"Changing the requested subscription is not allowed for this account at this time. Please contact support (0044-7944144944) to discuss further.\");\r\n this.monthlyCheck = this.subscriptionType == \"month\";\r\n this.yearlyCheck = this.subscriptionType == \"year\";;\r\n return;\r\n }\r\n if (plan == 'month') {\r\n this.showAnnual = false;\r\n this.monthlyCheck = true;\r\n this.yearlyCheck = false;\r\n this.planText = '/mo/user';\r\n this.standardCost = 3;\r\n this.premiumCost = 5;\r\n this.enterpriseCost = 10;\r\n this.planInterval = 'month';\r\n }\r\n else {\r\n this.showAnnual = true;\r\n this.monthlyCheck = false;\r\n this.yearlyCheck = true;\r\n this.planText = '/yr/user';\r\n this.standardCostWithOutDiscount = 3 * 12;\r\n this.standardCost = (this.standardCostWithOutDiscount - (this.standardCostWithOutDiscount * 20 / 100)).toFixed(2);\r\n\r\n this.premiumCostWithOutDiscount = 5 * 12;\r\n this.premiumCost = (this.premiumCostWithOutDiscount - (this.premiumCostWithOutDiscount * 20 / 100)).toFixed(2);\r\n this.enterpriseCostWithOutDiscount = 10 * 12;\r\n this.enterpriseCost = (this.enterpriseCostWithOutDiscount - (this.enterpriseCostWithOutDiscount * 20 / 100)).toFixed(2);\r\n this.planInterval = 'year';\r\n }\r\n }\r\n getPurchasedLicensesCount() {\r\n this.paymentService.getPurchasedLicensesCount().subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n if(responseData.data)\r\n {\r\n this.noOfPurchases = responseData.data.purchasedLicensesCount;\r\n this.selectedPlanName = responseData.data.purchaseType;\r\n this.renewalDate = responseData.data.renewalDate;\r\n this.isCancelled = responseData.data.isCancelled;\r\n this.planInterval = this.subscriptionType = responseData.data.subscriptionType;\r\n if(this.selectedPlanName == \"Standard\")\r\n this.selectedIndex = 1;\r\n else if(this.selectedPlanName == \"Premium\")\r\n this.selectedIndex = 2;\r\n else if(this.selectedPlanName == \"Enterprise\")\r\n this.selectedIndex = 3;\r\n \r\n this.isShowCurrentPlan = responseData.data.isShowCurrentPlan;\r\n if(this.isShowCurrentPlan){\r\n this.yearlyCheck = this.planInterval =='year';\r\n this.changeEvent(this.planInterval);\r\n }\r\n }\r\n \r\n }\r\n });\r\n }\r\n\r\n subscription(newPlanName,index){\r\n if(this.selectedIndex > index && this.isShowCurrentPlan)\r\n this.toastr.warning(\"Changing the requested subscription is not allowed for this account at this time. Please contact support (0044-7944144944) to discuss further.\");\r\n else{\r\n this.purchaseMoreLicenses(newPlanName);\r\n }\r\n }\r\n\r\n purchaseMoreLicenses(newPlanName) {\r\n const dialogRef = this.dialog.open(PurchaseMoreLicensesComponent, {\r\n height: \"45%\",\r\n width: \"28%\",\r\n hasBackdrop: true,\r\n direction: \"ltr\",\r\n data: { noOfPurchases: ((this.noOfPurchases == null || this.noOfPurchases == undefined ) ? this.totalNoOfActiveUsers : this.noOfPurchases), productName: newPlanName , subscriptionType: this.planInterval,isSubscriberNew:true},\r\n disableClose: true\r\n });\r\n dialogRef.afterClosed().subscribe(() => {\r\n console.log(\"The dialog was closed\");\r\n });\r\n }\r\n getActiveUsersCount() {\r\n this.paymentService.getActiveUsersCount().subscribe((responseData: any) => {\r\n if (responseData.success == true) {\r\n this.totalNoOfActiveUsers = responseData.data;\r\n }\r\n });\r\n }\r\n}"," \r\n <div id=\"generic_price_table\">\r\n <mat-card>\r\n <mat-card-content>\r\n <section style=\"margin-top: -30px !important;\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 text-end\">\r\n <span style=\"float: right;margin-right: -15px !important;\"><a mat-button color=\"accent\" [routerLink]=\"'/shell/Accounts'\" style=\"padding-right: 0px !important;font-size: large;\">Back to accounts</a></span>\r\n </div>\r\n <div class=\"col-md-12 text-center\" style=\"color: primary;margin-bottom: 10px !important;\">\r\n <h4 style=\"margin-top: 0px !important;\">Grow better with the right plan.\r\n </h4>\r\n <span>Pay for what you need (when you need it).</span>\r\n </div>\r\n </div>\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-md-4\" style=\"padding-right: 0px; padding-left: 8px;\">\r\n \r\n <div class=\"generic_content active clearfix\" style=\"border: 1px solid #cecccc;\">\r\n <div class=\"generic_head_price clearfix\">\r\n <div class=\"generic_head_content clearfix\">\r\n <div class=\"head_bg\"></div>\r\n <div class=\"head\">\r\n <span>Standard</span>\r\n </div>\r\n \r\n </div>\r\n <div class=\"generic_price_tag clearfix\">\r\n <div style=\"background: #d0c9c9;width: 85px;text-shadow: 0 0 black;float: right;\r\n padding-right: 7px;\" *ngIf=\"selectedPlanName =='Standard' && isShowCurrentPlan\"><span>Current plan</span></div>\r\n <span class=\"price\">\r\n <span class=\"sign\">$</span>\r\n <span class=\"currency\" style=\"color: #2ecc71 !important;\r\n font-weight: 800 !important;\">{{standardCost}}</span>\r\n <span class=\"month\">{{planText}}</span>\r\n </span>\r\n <div *ngIf=\"showAnnual\">billed at \r\n <span style=\"text-decoration: line-through !important;font-family: none;\"> ${{standardCostWithOutDiscount}}</span>\r\n <span style=\"font-weight: 600 !important;text-decoration: none;font-family: none;\"> ${{standardCost}}/yr</span>\r\n </div>\r\n <div *ngIf=\"!showAnnual\">billed at Monthly</div>\r\n <div class=\"generic_price_btn clearfix\">\r\n <a class=\"\" (click)=\"subscription('Standard',1)\">Subscribe</a>\r\n </div>\r\n </div>\r\n <div>\r\n <div class=\"cd-pricing-switcher\">\r\n <span class=\"fieldset\">\r\n <input type=\"radio\" name=\"duration-1\" value=\"monthly\" id=\"monthly-1\" [checked]=\"monthlyCheck\">\r\n <label style=\"font-weight: 200 !important;\r\n margin: 0px !important;\" (click)=\"changeEvent('month')\">Pay Monthly <br><b style=\"font-size: 12px;font-family: 'Raleway';\">Commit monthly</b></label>\r\n <input type=\"radio\" name=\"duration-1\" value=\"yearly\" id=\"yearly-1\" [checked]=\"yearlyCheck\">\r\n <label for=\"yearly-1\" style=\"font-weight: 200 !important;margin: 0px !important;\"\r\n (click)=\"changeEvent('yearly')\">Pay Upfront <b style=\"font-weight: 900 !important;color: #2ecc71;\">Save 20% </b><br>\r\n <b style=\"font-size: 12px;font-family: 'Raleway';\">Commit annually</b></label>\r\n <span class=\"cd-switch\"></span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"generic_feature_list\">\r\n <ul>\r\n <li>Time Tracking</li>\r\n <li>Productivity</li>\r\n <li>Punch Card</li>\r\n <li>Time Sheet</li>\r\n <li>Web Usage Tracking</li>\r\n <li>Keystrokes</li>\r\n <li>Mouse Movements</li>\r\n <li>Screenshots(Keeping 1 Week Screenshots)</li>\r\n </ul>\r\n </div>\r\n <div class=\"generic_price_btn clearfix\">\r\n <a class=\"\" (click)=\"subscription('Standard',1)\">Subscribe</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4\" style=\"padding-right: 0px; padding-left: 8px;\">\r\n \r\n <div class=\"generic_content active1 clearfix\" style=\"border: 1px solid #cecccc;\">\r\n <div class=\"generic_head_price clearfix\">\r\n <div class=\"generic_head_content clearfix\">\r\n <div class=\"head_bg\"></div>\r\n <div class=\"head\">\r\n <span>Premium</span>\r\n </div>\r\n \r\n </div>\r\n <div class=\"generic_price_tag clearfix\">\r\n <div style=\"background: #d0c9c9;width: 85px;text-shadow: 0 0 black;float: right;\r\n padding-right: 5px;\" *ngIf=\"selectedPlanName =='Premium' && isShowCurrentPlan\"><span>Current plan</span></div>\r\n <span class=\"price\">\r\n <span class=\"sign\">$</span>\r\n <span class=\"currency\" style=\"color: #379eff !important;\r\n font-weight: 800 !important;\">{{premiumCost}}</span>\r\n <span class=\"month\">{{planText}}</span>\r\n </span>\r\n <div *ngIf=\"showAnnual\">billed at \r\n <span style=\"text-decoration: line-through !important;font-family: none;\"> ${{premiumCostWithOutDiscount}}</span>\r\n <span style=\"font-weight: 600 !important;text-decoration: none;font-family: none;\"> ${{premiumCost}}/yr</span>\r\n </div>\r\n <div *ngIf=\"!showAnnual\">billed at Monthly</div>\r\n <div class=\"generic_price_btn clearfix\"><a class=\"\"\r\n (click)=\"subscription('Premium',2)\">Subscribe</a></div>\r\n </div>\r\n <div>\r\n <div class=\"cd-pricing-switcher\">\r\n <span class=\"fieldset\">\r\n <input type=\"radio\" name=\"duration-2\" value=\"monthly\" id=\"monthly-2\" [checked]=\"monthlyCheck\">\r\n <label style=\"font-weight: 200 !important;\r\n margin: 0px !important;\"\r\n (click)=\"changeEvent('month')\">Pay Monthly <br><b style=\"font-size: 12px;font-family: 'Raleway';\">Commit monthly</b></label>\r\n <input type=\"radio\" name=\"duration-2\" value=\"yearly\" id=\"yearly-2\" [checked]=\"yearlyCheck\">\r\n <label for=\"yearly-1\" style=\"font-weight: 200 !important;margin: 0px !important;\"\r\n (click)=\"changeEvent('yearly')\">Pay Upfront <b style=\"font-weight: 900 !important;color: #379eff;\">Save 20% </b><br>\r\n <b style=\"font-size: 12px;font-family: 'Raleway';\">Commit annually</b></label>\r\n <span class=\"cd-switch\"></span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"generic_feature_list\">\r\n <ul>\r\n <li>Time Tracking</li>\r\n <li>Productivity</li>\r\n <li>Punch Card</li>\r\n <li>Time Sheet</li>\r\n <li>Web Usage Tracking</li>\r\n <li>Keystrokes</li>\r\n <li>Mouse Movements</li>\r\n <li>Screenshots(Keeping 1 Week Screenshots)</li>\r\n <li>Tasks and Projects</li>\r\n <li>Absence Management</li>\r\n <li>Task Time Logging </li>\r\n <li>HR Records</li>\r\n </ul>\r\n </div>\r\n <div class=\"generic_price_btn clearfix\">\r\n <a class=\"\" (click)=\"subscription('Premium',2)\">Subscribe</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4\" style=\"padding-right: 0px; padding-left: 8px;\">\r\n \r\n <div class=\"generic_content active2 clearfix\" style=\"border: 1px solid #cecccc;\">\r\n <div class=\"generic_head_price clearfix\">\r\n <div class=\"generic_head_content clearfix\">\r\n <div class=\"head_bg\"></div>\r\n <div class=\"head\">\r\n <span>Enterprise</span>\r\n </div>\r\n \r\n </div>\r\n <div class=\"generic_price_tag clearfix\">\r\n <div style=\"background: #d0c9c9;width: 85px;text-shadow: 0 0 black;float: right;\r\n padding-right: 7px;\" *ngIf=\"selectedPlanName =='Enterprise' && isShowCurrentPlan\"><span>Current plan</span></div>\r\n <span class=\"price\">\r\n <span class=\"sign\">$</span>\r\n <span class=\"currency\" style=\"color: #b142ec !important;\r\n font-weight: 800 !important;\">{{enterpriseCost}}</span>\r\n <span class=\"month\">{{planText}}</span>\r\n </span>\r\n <div *ngIf=\"showAnnual\">billed at \r\n <span style=\"text-decoration: line-through !important;font-family: none;\"> ${{enterpriseCostWithOutDiscount}}</span>\r\n <span style=\"font-weight: 600 !important;text-decoration: none;font-family: none;\"> ${{enterpriseCost}}/yr</span>\r\n </div>\r\n <div *ngIf=\"!showAnnual\">billed at Monthly</div>\r\n <div class=\"generic_price_btn clearfix\"><a class=\"\"\r\n (click)=\"subscription('Enterprise',3)\">Subscribe</a></div>\r\n </div>\r\n <div>\r\n <div class=\"cd-pricing-switcher\">\r\n <span class=\"fieldset\">\r\n <input type=\"radio\" name=\"duration-3\" value=\"monthly\" id=\"monthly-3\" [checked]=\"monthlyCheck\">\r\n <label style=\"font-weight: 200 !important; margin: 0px !important;\"\r\n (click)=\"changeEvent('month')\">Pay Monthly <br><b style=\"font-size: 12px;font-family: 'Raleway';\">Commit monthly</b></label>\r\n <input type=\"radio\" name=\"duration-3\" value=\"yearly\" id=\"yearly-3\" [checked]=\"yearlyCheck\">\r\n <label for=\"yearly-1\" style=\"font-weight: 200 !important;margin: 0px !important;\"\r\n (click)=\"changeEvent('yearly')\">Pay Upfront <b style=\"font-weight: 900 !important;color: #b142ec;\">Save 20% </b><br>\r\n <b style=\"font-size: 12px;font-family: 'Raleway';\">Commit annually</b></label>\r\n <span class=\"cd-switch\"></span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"generic_feature_list\">\r\n <ul>\r\n <li>Time Tracking</li>\r\n <li>Productivity</li>\r\n <li>Punch Card</li>\r\n <li>Time Sheet</li>\r\n <li>Web Usage Tracking</li>\r\n <li>Keystrokes</li>\r\n <li>Mouse Movements</li>\r\n <li>Screenshots(Keeping 1 Week Screenshots)</li>\r\n <li>Tasks and Projects</li>\r\n <li>Absence Management</li>\r\n <li>Task Time Logging </li>\r\n <li>HR Records</li>\r\n <li>Payroll</li>\r\n <li>Messenger</li>\r\n <li>Agile Project Management</li>\r\n <li>Document Management</li>\r\n <li>GSuite Integration</li>\r\n <li>Custom Roles</li>\r\n </ul>\r\n </div>\r\n <div class=\"generic_price_btn clearfix\">\r\n <a class=\"\" (click)=\"subscription('Enterprise',3)\">Subscribe</a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n </mat-card-content>\r\n </mat-card>\r\n \r\n </div>\r\n\r\n","import { Component, OnInit, AfterViewInit, ViewChild, HostListener, OnDestroy } from \"@angular/core\";\r\nimport { Router, NavigationEnd, RouteConfigLoadStart, RouteConfigLoadEnd, ResolveStart, ResolveEnd, NavigationStart, NavigationCancel, NavigationError, Event, } from \"@angular/router\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport '../../../globaldependencies/helpers/fontawesome-icons';\r\n\r\n@Component({\r\n selector: \"app-lives-welocme-page\",\r\n templateUrl: \"./lives-welcome-page.html\"\r\n})\r\n\r\nexport class LiveWelcomePageComponent implements OnInit {\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n public translate: TranslateService\r\n ) {\r\n }\r\n ngOnInit() {\r\n }\r\n navigateToModule() {\r\n this.router.navigate(['lives/lives-search']);\r\n }\r\n}\r\n","<div\r\n style=\"height:100vh;background-image: url(https://bviewstorage.blob.core.windows.net/3d19eb4e-9015-4e83-9d1f-2a2936e0c171/hrm/b52ce424-5d4d-49d4-8d0f-eea378853d39/version-1/Picture1.jpg); \">\r\n <div>\r\n <img src=\"https://bviewstorage.blob.core.windows.net/3d19eb4e-9015-4e83-9d1f-2a2936e0c171/hrm/b52ce424-5d4d-49d4-8d0f-eea378853d39/version-1/Picture2.png\"\r\n style=\"margin-left: 45%; height:250px; margin-top:10%;\">\r\n </div>\r\n <div>\r\n <div class=\"mt-1\" style=\"font-family: Bradley Hand ITC;color:#002060; font-size: x-large;margin-left:42%;\">\r\n <b>Livelihoods Enrichment System</b></div>\r\n <div class=\"mt-5\" style=\"font-family: Century Gothic;color:#73c2fb; font-size: xx-large;margin-left:38%;\">\r\n <b>Bring Sustainable Projects to LIVE</b></div>\r\n  <p style=\"font-family: Century Gothic; font-size:large;color:#002060; margin-left: 33%; width:40%; text-align: center;\"> LIVES a\r\n digital marketplace channelising impact investments in sustainable palm oil.</p>\r\n <p align=\"center\" style=\"font-family: Century Gothic; font-size:large;color:#002060; margin-left: 33%; width:42%; text-align: center;\"> An ecosystem\r\n bringing together all the participants of the Global Palm Oil Supply Chain with the aim of empowering Small\r\n Holder Farmers to adopt sustainable agronomic practices and become integrated with global economy.</p>\r\n </div>\r\n <button style=\"\r\n display: block;\r\n color: #00259C;\r\n font-size: 15px;\r\n margin-left: 47%;\r\n margin-top: 2%;\r\n padding: 10px 20px;\r\n border-radius: 10px;\r\n border: 2px solid #00259C;\" (click)=\"navigateToModule()\">Click here to proceed</button>\r\n</div>","import { NgModule, NgModuleFactoryLoader, SystemJsNgModuleLoader, ModuleWithProviders } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { DateAdapter } from '@angular/material/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatTableModule} from '@angular/material/table';\r\nimport { MatTabsModule} from '@angular/material/tabs';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatBadgeModule } from '@angular/material/badge';\r\nimport { MatDialogModule} from '@angular/material/dialog';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';\r\nimport { FlexLayoutModule } from \"@angular/flex-layout\";\r\nimport { MAT_MOMENT_DATE_FORMATS } from \"@angular/material-moment-adapter\";\r\nimport { RouterModule } from '@angular/router';\r\nimport { SnovasysAvatarModule } from '@snovasys/snova-avatar';\r\nimport { DynamicModule } from '@snovasys/snova-ndc-dynamic';\r\nimport { TranslateModule, TranslateService, TranslateLoader } from '@ngx-translate/core';\r\nimport { SatPopoverModule } from \"@ncstate/sat-popover\";\r\nimport { FontAwesomeModule } from \"@fortawesome/angular-fontawesome\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { PubNubAngular } from 'pubnub-angular2';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { PERFECT_SCROLLBAR_CONFIG, PerfectScrollbarConfigInterface, PerfectScrollbarModule } from \"ngx-perfect-scrollbar\";\r\nimport { TimeagoModule } from \"ngx-timeago\";\r\nimport { CustomAppBaseComponent } from '../globaldependencies/components/componentbase';\r\nimport { JwtInterceptor } from '../globaldependencies/intercepter/jwt.interceptor';\r\nimport { RemoveSpecialCharactersPipe } from '../globaldependencies/pipes/removeSpecialCharacters.pipe';\r\nimport { MomentUtcDateAdapter } from '../globaldependencies/helpers/moment-utc-date-adapter';\r\nimport { SoftLabelPipe } from '../globaldependencies/pipes/softlabels.pipes';\r\nimport { UtcToLocalTimeWithDatePipe } from '../globaldependencies/pipes/utctolocaltimewithdate.pipe';\r\nimport { WorkflowStatusFilterPipe } from '../globaldependencies/pipes/workflowstatus.pipes';\r\nimport { FetchSizedAndCachedImagePipe } from '../globaldependencies/pipes/fetchSizedAndCachedImage.pipe';\r\nimport { OrderByPipe } from '../globaldependencies/pipes/orderby-pipe';\r\nimport { UtcToLocalTimePipe } from '../globaldependencies/pipes/utctolocaltime.pipe';\r\nimport { WINDOW_PROVIDERS } from '../globaldependencies/helpers/window.helper';\r\nimport { SanitizeHtmlPipe } from '../globaldependencies/pipes/sanitize.pipe';\r\nimport { GoogleAnalyticsService } from './services/google-analytics.service';\r\nimport { ThemeService } from './services/theme.service';\r\nimport { LayoutService } from './services/layout.service';\r\nimport * as reducers from \"./store/reducers/index\";\r\nimport * as SharedEffects from \"./store/effects/index\";\r\nimport { AdminLayoutComponent } from './components/admin-layout/admin-layout.component';\r\nimport { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';\r\nimport { HeaderSideComponent } from './components/header-side/header-side.component';\r\nimport { HeaderTopComponent } from './components/header-top/header-top.component';\r\nimport { MenuComponent } from './components/menu/menu.component';\r\nimport { AnnoucementDialogComponent } from './components/notifications/announcement-dialog.component';\r\nimport { NotificationsComponent } from './components/notifications/notifications.component';\r\nimport { SidebarTopComponent } from './components/sidebar-top/sidebar-top.component';\r\nimport { SidenavComponent } from './components/sidenav/sidenav.component';\r\nimport { WorkItemsDialogComponent } from './components/all-work-items-dialog/all-work-items-dialog.component';\r\nimport { ShellModulesService } from './services/shell.modules.service';\r\nimport { shellModulesInfo } from './models/shellModulesInfo';\r\nimport { FeedBackSubmissionComponent } from './components/submit-feedback/submit-feedback.component';\r\nimport { FeedTimeComponent } from './components/feed-time/feed-time.component';\r\nimport { FeedTimeDialogComponent } from './components/feed-time/feed-time-dialog.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HighLightTextPipe } from '../globaldependencies/pipes/highLightText.pipe';\r\nimport { OwlDateTimeModule, OwlNativeDateTimeModule, OWL_DATE_TIME_LOCALE } from 'ng-pick-datetime';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { ExportConfigurationDialogComponent } from './components/export-import-configuration/export-configuration.component';\r\nimport { NgxDropzoneModule } from 'ngx-dropzone';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { SideBarComponent } from './components/sidenav/side-bar.component';\r\nimport { DocumentManagementModule } from '@snovasys/snova-document-management';\r\nimport { DropZoneModule } from '@snovasys/snova-file-uploader';\r\nimport { AccountAndBillingComponent } from './components/Payments/account.component';\r\nimport { ProductAndServicesComponent } from './components/Payments/product-service.component';\r\nimport { CompanyInformationComponent } from './components/Payments/company-information';\r\nimport { DocumentComponent } from './components/Payments/document.component';\r\nimport { TransactionsComponent } from './components/Payments/transactions.component';\r\nimport { PaymentMethodComponent } from './components/Payments/payment-method.component';\r\nimport { NgxDatatableModule } from \"@swimlane/ngx-datatable\";\r\nimport { PurchaseMoreLicensesComponent } from './components/Payments/purchase-more-licenses';\r\nimport { CompanyPlansComponent } from './components/Payments/company-plans.component';\r\nimport { PushNotificationsModule } from 'ng-push-ivy';\r\nimport { LiveWelcomePageComponent } from './components/lives/lives-welcome-page';\r\n\r\nexport function HttpLoaderFactory(httpClient: HttpClient) {\r\n return new TranslateHttpLoader(httpClient);\r\n}\r\n\r\nconst dialogMock = {\r\n close: () => { }\r\n};\r\n\r\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\r\n suppressScrollX: true\r\n};\r\n\r\nexport const COMPONENTS = [\r\n AdminLayoutComponent,\r\n ConfirmationDialogComponent,\r\n ExportConfigurationDialogComponent,\r\n HeaderSideComponent,\r\n HeaderTopComponent,\r\n MenuComponent,\r\n AnnoucementDialogComponent,\r\n NotificationsComponent,\r\n SidebarTopComponent,\r\n SidenavComponent,\r\n RemoveSpecialCharactersPipe,\r\n CustomAppBaseComponent,\r\n RemoveSpecialCharactersPipe,\r\n SoftLabelPipe,\r\n HighLightTextPipe,\r\n UtcToLocalTimeWithDatePipe,\r\n WorkflowStatusFilterPipe,\r\n FetchSizedAndCachedImagePipe,\r\n OrderByPipe,\r\n UtcToLocalTimePipe,\r\n SanitizeHtmlPipe,\r\n WorkItemsDialogComponent,\r\n FeedTimeDialogComponent,\r\n FeedBackSubmissionComponent,\r\n FeedTimeComponent,\r\n SideBarComponent,\r\n AccountAndBillingComponent,\r\n ProductAndServicesComponent,\r\n CompanyInformationComponent,\r\n DocumentComponent,\r\n TransactionsComponent,\r\n PaymentMethodComponent,\r\n PurchaseMoreLicensesComponent,\r\n CompanyPlansComponent,\r\n LiveWelcomePageComponent\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule,\r\n //RouterModule.forChild(PaymentRoutes),\r\n CommonModule,\r\n FlexLayoutModule,\r\n MatButtonModule,\r\n TranslateModule.forChild({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n SatPopoverModule,\r\n DynamicModule.withComponents([]),\r\n MatCardModule,\r\n MatProgressBarModule,\r\n FontAwesomeModule,\r\n MatInputModule,\r\n FormsModule,\r\n MatTooltipModule,\r\n MatIconModule,\r\n ReactiveFormsModule,\r\n MatSnackBarModule,\r\n MatSelectModule,\r\n MatDialogModule,\r\n MatMenuModule,\r\n MatSidenavModule,\r\n MatListModule,\r\n MatToolbarModule,\r\n MatGridListModule,\r\n MatProgressSpinnerModule,\r\n OwlDateTimeModule,\r\n NgxUiLoaderModule,\r\n MatTabsModule,\r\n MatTableModule,\r\n NgxDropzoneModule,\r\n NgxDatatableModule,\r\n OwlNativeDateTimeModule,\r\n TimeagoModule.forRoot(),\r\n SnovasysAvatarModule,\r\n ToastrModule.forRoot({\r\n timeOut: 5000\r\n }),\r\n StoreModule.forFeature(\"sharedManagement\", reducers.reducers),\r\n EffectsModule.forFeature(SharedEffects.allSharedModuleEffects),\r\n PerfectScrollbarModule,\r\n MatCheckboxModule,\r\n NgxDropzoneModule,\r\n MatBadgeModule,\r\n PushNotificationsModule,\r\n DocumentManagementModule,\r\n DropZoneModule\r\n ],\r\n declarations: [COMPONENTS],\r\n exports: [COMPONENTS],\r\n entryComponents: [WorkItemsDialogComponent, FeedTimeDialogComponent, ConfirmationDialogComponent, ExportConfigurationDialogComponent, PurchaseMoreLicensesComponent],\r\n providers: [\r\n { provide: NgModuleFactoryLoader, useClass: SystemJsNgModuleLoader },\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },\r\n TranslateService,\r\n CookieService,\r\n RemoveSpecialCharactersPipe,\r\n SoftLabelPipe,\r\n HighLightTextPipe,\r\n UtcToLocalTimeWithDatePipe,\r\n WorkflowStatusFilterPipe,\r\n FetchSizedAndCachedImagePipe,\r\n OrderByPipe,\r\n UtcToLocalTimePipe,\r\n DatePipe,\r\n SanitizeHtmlPipe,\r\n { provide: OWL_DATE_TIME_LOCALE, useValue: 'en-gb' },\r\n { provide: MAT_DATE_LOCALE, useValue: \"en-GB\" },\r\n { provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS },\r\n { provide: DateAdapter, useClass: MomentUtcDateAdapter },\r\n { provide: MatDialogRef, useValue: {} },\r\n { provide: MAT_DIALOG_DATA, useValue: {} },\r\n { provide: PERFECT_SCROLLBAR_CONFIG, useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG },\r\n WINDOW_PROVIDERS,\r\n GoogleAnalyticsService,\r\n ThemeService,\r\n LayoutService,\r\n PubNubAngular\r\n ]\r\n})\r\n\r\nexport class ShellModule {\r\n constructor() {\r\n const themeBaseColor = localStorage.getItem('themeColor');\r\n document.documentElement.style.setProperty('--primary-theme-color', themeBaseColor);\r\n }\r\n\r\n static forChild(config: shellModulesInfo): ModuleWithProviders<ShellModule> {\r\n return {\r\n ngModule: ShellModule,\r\n providers: [\r\n { provide: ShellModulesService, useValue: config }\r\n ]\r\n };\r\n }\r\n}\r\n","import { Routes } from '@angular/router';\r\nimport { LiveWelcomePageComponent } from './components/lives/lives-welcome-page';\r\n//import { settingsComponent } from \"@snovasys/snova-admin-module\";\r\nimport { AccountAndBillingComponent } from './components/Payments/account.component';\r\nimport { CompanyPlansComponent } from './components/Payments/company-plans.component';\r\nexport const ShellRouts: Routes = [\r\n {\r\n path: \"\",\r\n children: [\r\n // { path: 'settings', component: settingsComponent, data: { title: 'settings', breadcrumb: 'settings' } },\r\n { path: 'Accounts', component: AccountAndBillingComponent, data: { title: 'Account & Billing', breadcrumb: 'Account & Billing' } },\r\n { path: 'payments-plans', component: CompanyPlansComponent, data: { title: 'Payments', breadcrumb: 'Payments' } },\r\n { path: 'welcome', component: LiveWelcomePageComponent, data: { title: 'welcome', breadcrumb: 'welcome' } }\r\n ]\r\n }\r\n]","// Module\r\nexport * from './lib/shell-components/shell.module';\r\n// Module\r\n\r\n//Components\r\nimport { AdminLayoutComponent } from './lib/shell-components/components/admin-layout/admin-layout.component';\r\nimport { ConfirmationDialogComponent } from './lib/shell-components/components/confirmation-dialog/confirmation-dialog.component';\r\nimport { HeaderSideComponent } from './lib/shell-components/components/header-side/header-side.component';\r\nimport { HeaderTopComponent } from './lib/shell-components/components/header-top/header-top.component';\r\nimport { MenuComponent } from './lib/shell-components/components/menu/menu.component';\r\nimport { AnnoucementDialogComponent } from './lib/shell-components/components/notifications/announcement-dialog.component';\r\nimport { NotificationsComponent } from './lib/shell-components/components/notifications/notifications.component';\r\nimport { SidebarTopComponent } from './lib/shell-components/components/sidebar-top/sidebar-top.component';\r\nimport { SidenavComponent } from './lib/shell-components/components/sidenav/sidenav.component';\r\nimport { ShellModulesService } from './lib/shell-components/services/shell.modules.service';\r\nimport { shellModulesInfo } from './lib/shell-components/models/shellModulesInfo';\r\nimport { AvailableLangs } from './lib/shell-components/constants/available-languages';\r\nimport { ShellRouts } from './lib/shell-components/shell.routing';\r\nimport { CompanyPlansComponent } from './lib/shell-components/components/Payments/company-plans.component';\r\nimport { PaymentMethodComponent } from './lib/shell-components/components/Payments/payment-method.component';\r\nimport { HighLightTextPipe } from './lib/globaldependencies/pipes/highLightText.pipe';\r\nimport { OrderByPipe } from './lib/globaldependencies/pipes/orderby-pipe';\r\nimport { UtcToLocalTimePipe } from './lib/globaldependencies/pipes/utctolocaltime.pipe';\r\nimport { UtcToLocalTimeWithDatePipe } from './lib/globaldependencies/pipes/utctolocaltimewithdate.pipe';\r\nimport { WorkflowStatusFilterPipe } from './lib/globaldependencies/pipes/workflowstatus.pipes';\r\nimport { WorkItemsDialogComponent } from './lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component';\r\nimport { ExportConfigurationDialogComponent } from './lib/shell-components/components/export-import-configuration/export-configuration.component';\r\nimport { FeedTimeDialogComponent } from './lib/shell-components/components/feed-time/feed-time-dialog.component';\r\nimport { FeedTimeComponent } from './lib/shell-components/components/feed-time/feed-time.component';\r\nimport { AccountAndBillingComponent } from './lib/shell-components/components/Payments/account.component';\r\nimport { CompanyInformationComponent } from './lib/shell-components/components/Payments/company-information';\r\nimport { DocumentComponent } from './lib/shell-components/components/Payments/document.component';\r\nimport { ProductAndServicesComponent } from './lib/shell-components/components/Payments/product-service.component';\r\nimport { PurchaseMoreLicensesComponent } from './lib/shell-components/components/Payments/purchase-more-licenses';\r\nimport { TransactionsComponent } from './lib/shell-components/components/Payments/transactions.component';\r\nimport { SideBarComponent } from './lib/shell-components/components/sidenav/side-bar.component';\r\nimport { FeedBackSubmissionComponent } from './lib/shell-components/components/submit-feedback/submit-feedback.component';\r\nimport { SanitizeHtmlPipe } from './lib/globaldependencies/pipes/sanitize.pipe';\r\nimport { FetchSizedAndCachedImagePipe } from './lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe';\r\nimport { RemoveSpecialCharactersPipe } from './lib/globaldependencies/pipes/removeSpecialCharacters.pipe';\r\nimport { SoftLabelPipe } from './lib/globaldependencies/pipes/softlabels.pipes';\r\nimport { CustomAppBaseComponent } from './lib/globaldependencies/components/componentbase';\r\nimport { LiveWelcomePageComponent } from './lib/shell-components/components/lives/lives-welcome-page';\r\n\r\nexport { AdminLayoutComponent };\r\nexport { ConfirmationDialogComponent };\r\nexport { HeaderSideComponent };\r\nexport { HeaderTopComponent };\r\nexport { MenuComponent };\r\nexport { AnnoucementDialogComponent };\r\nexport { NotificationsComponent };\r\nexport { SidebarTopComponent };\r\nexport { SidenavComponent };\r\nexport { ShellModulesService };\r\nexport { shellModulesInfo };\r\nexport { ShellRouts };\r\n\r\n\r\nexport {\r\n MessageActionTypes, CountTriggered, MessageTriggered, ChatWebActions,SendChannelUpdateModelTriggered,ReceiveChannelUpdateModelCompleted,SendingSignalTriggered,ReceiveSignalCompleted,\r\n MessageCompleted, PresenceEventCompleted, InitalStateOfUsersCompleted,ReceiveMessageCompleted,ReceiveMessageTriggered,RequestingStateOfUsersTriggered\r\n} from './lib/shell-components/store/actions/chat.actions';\r\nexport { State } from './lib/shell-components/store/reducers/chat.reducers';\r\n\r\n\r\n//Components\r\n\r\n// Store\r\nexport * from './lib/shell-components/store/reducers/index';\r\n// Store\r\n\r\n// Actions\r\n// export * from './lib/shell-components/store/actions/authentication.actions';\r\n// Actions\r\n\r\n//constants\r\nexport { AvailableLangs };\r\nexport { CustomAppBaseComponent };\r\nexport { RemoveSpecialCharactersPipe };\r\nexport { SoftLabelPipe };\r\nexport { UtcToLocalTimeWithDatePipe };\r\nexport { WorkflowStatusFilterPipe };\r\nexport { FetchSizedAndCachedImagePipe };\r\nexport { OrderByPipe };\r\nexport { UtcToLocalTimePipe };\r\nexport { SanitizeHtmlPipe };\r\nexport { WorkItemsDialogComponent };\r\nexport { FeedTimeDialogComponent };\r\nexport { ExportConfigurationDialogComponent };\r\nexport { FeedBackSubmissionComponent };\r\nexport { FeedTimeComponent };\r\nexport { HighLightTextPipe };\r\nexport { SideBarComponent };\r\nexport { AccountAndBillingComponent };\r\nexport { PurchaseMoreLicensesComponent };\r\nexport { ProductAndServicesComponent };\r\nexport { CompanyInformationComponent };\r\nexport { DocumentComponent };\r\nexport { TransactionsComponent };\r\nexport { PaymentMethodComponent };\r\nexport { CompanyPlansComponent };\r\nexport { LiveWelcomePageComponent };","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","domHelper.changeTheme","ExceptionHandled","initialState","reducer","fromNotifications.reducer","fromAuthentication.reducer","fromMenuItems.reducer","fromNotificationValidator.reducer","fromChatMessenger.reducer","fromMenuItems.menuItemsAdapter","fromNotifications.notificationsAdapter","i2","i2.MenuItemService","i3","i4.SoftLabelPipe","fromAuthentication.AuthenticationEffects","fromMenuItems.MenuItemsEffects","fromNotifications.NotificationEffect","fromNotificationValidator.NotificationValidatorEffects","fromChatEffects.MessageEffects","sharedModuleReducers.getThemeModel","sharedModuleReducers.getAuthenticatedUserModel","i1.LayoutService","i2.ThemeService","i4","i6","i8","i10","i12","i13","i14","sharedModuleReducers.getCurrentActiveMenuCategoryMenuItems","i5","i7","i9","i1.SidenavComponent","sharedModuleReducers.getDemoRecordsDataDeletion","i5.CommonService","i11","i1.shellModulesInfo","i16","i17","i18","sharedModuleReducers.doesUserHavePermission","sharedModuleReducers.getCompanySettings","i12.GoogleAnalyticsService","i13.CommonService","i15","i21","i23","i24","i26","i27","i28","i29","i30","i31.SoftLabelPipe","i32.HighLightTextPipe","i33.RemoveSpecialCharactersPipe","i34.FetchSizedAndCachedImagePipe","sharedModuleReducers.getNotificationAll","sharedModuleReducers.getNotificationsLoading","i8.OrderByPipe","i9.SignalrService","i15.SanitizeHtmlPipe","i17.UtcToLocalTimePipe","i1.ShellModulesService","i8.RemoveSpecialCharactersPipe","i9.FetchSizedAndCachedImagePipe","i10.SanitizeHtmlPipe","i12.UtcToLocalTimePipe","sharedModuleReducers.isTimeSheetFetching","sharedModuleReducers.getTimeShettButtonDetails","sharedModuleReducers.getUserStoreId","sharedModuleReducers.getNotificationUnreadTotal","i19","i20.MenuComponent","i22","i25","i28.NotificationsComponent","i30.FeedTimeComponent","i31","i32.FeedBackSubmissionComponent","i33","i34","i35","i37","i38.AnnoucementDialogComponent","i39","i41","i42","i43","i44","i45.RemoveSpecialCharactersPipe","i46.FetchSizedAndCachedImagePipe","i47.SoftLabelPipe","i1.RecentSearchService","i6.SoftLabelPipe","i3.LayoutService","i8.CommonService","i10.SignalrService","i11.HeaderTopComponent","i14.SidebarTopComponent","i15.HeaderSideComponent","i16.SideBarComponent","i4.PaymentService","i2.PaymentService","i2.CommonService","i1.PaymentService","i2.ProductAndServicesComponent","i3.CompanyInformationComponent","i4.TransactionsComponent","i5.DocumentComponent","reducers.reducers","SharedEffects.allSharedModuleEffects"],"mappings":"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"}