@thetradeengineorg1/snova-shell-module 0.0.261 → 0.0.262

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 (432) hide show
  1. package/README.md +24 -24
  2. package/bundles/thetradeengineorg1-snova-shell-module.umd.js +13734 -18921
  3. package/bundles/thetradeengineorg1-snova-shell-module.umd.js.map +1 -1
  4. package/esm2015/lib/globaldependencies/components/avatar.component.js +28 -33
  5. package/esm2015/lib/globaldependencies/components/componentbase.js +538 -538
  6. package/esm2015/lib/globaldependencies/constants/feature-ids.js +449 -449
  7. package/esm2015/lib/globaldependencies/constants/localstorage-properties.js +38 -38
  8. package/esm2015/lib/globaldependencies/helpers/dom.helper.js +70 -70
  9. package/esm2015/lib/globaldependencies/helpers/fontawesome-icons.js +144 -144
  10. package/esm2015/lib/globaldependencies/helpers/moment-utc-date-adapter.js +37 -37
  11. package/esm2015/lib/globaldependencies/helpers/window.helper.js +32 -32
  12. package/esm2015/lib/globaldependencies/intercepter/jwt.interceptor.js +40 -40
  13. package/esm2015/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.js +36 -36
  14. package/esm2015/lib/globaldependencies/pipes/highLightText.pipe.js +24 -24
  15. package/esm2015/lib/globaldependencies/pipes/orderby-pipe.js +24 -24
  16. package/esm2015/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.js +22 -22
  17. package/esm2015/lib/globaldependencies/pipes/sanitize.pipe.js +24 -24
  18. package/esm2015/lib/globaldependencies/pipes/softlabels.pipes.js +346 -346
  19. package/esm2015/lib/globaldependencies/pipes/utctolocaltime.pipe.js +23 -23
  20. package/esm2015/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.js +25 -25
  21. package/esm2015/lib/globaldependencies/pipes/workflowstatus.pipes.js +27 -27
  22. package/esm2015/lib/shell-components/components/Payments/account.component.js +50 -121
  23. package/esm2015/lib/shell-components/components/Payments/company-information.js +262 -558
  24. package/esm2015/lib/shell-components/components/Payments/company-plans.component.js +138 -636
  25. package/esm2015/lib/shell-components/components/Payments/document.component.js +57 -129
  26. package/esm2015/lib/shell-components/components/Payments/payment-method.component.js +32 -90
  27. package/esm2015/lib/shell-components/components/Payments/product-service.component.js +143 -438
  28. package/esm2015/lib/shell-components/components/Payments/purchase-more-licenses.js +152 -249
  29. package/esm2015/lib/shell-components/components/Payments/transactions.component.js +60 -172
  30. package/esm2015/lib/shell-components/components/admin-layout/admin-layout.component.js +250 -350
  31. package/esm2015/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.js +89 -102
  32. package/esm2015/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.js +90 -126
  33. package/esm2015/lib/shell-components/components/export-import-configuration/export-configuration.component.js +357 -502
  34. package/esm2015/lib/shell-components/components/feed-time/feed-time-dialog.component.js +85 -98
  35. package/esm2015/lib/shell-components/components/feed-time/feed-time.component.js +83 -87
  36. package/esm2015/lib/shell-components/components/header-side/header-side.component.js +1617 -2342
  37. package/esm2015/lib/shell-components/components/header-top/header-top.component.js +93 -489
  38. package/esm2015/lib/shell-components/components/lives/lives-welcome-page.js +26 -55
  39. package/esm2015/lib/shell-components/components/menu/menu.component.js +2478 -3413
  40. package/esm2015/lib/shell-components/components/menu/searchTask.enum.js +10 -10
  41. package/esm2015/lib/shell-components/components/notifications/announcement-dialog.component.js +73 -110
  42. package/esm2015/lib/shell-components/components/notifications/notifications.component.js +449 -534
  43. package/esm2015/lib/shell-components/components/sidebar-top/sidebar-top.component.js +33 -39
  44. package/esm2015/lib/shell-components/components/sidenav/side-bar.component.js +81 -148
  45. package/esm2015/lib/shell-components/components/sidenav/sidenav.component.js +43 -439
  46. package/esm2015/lib/shell-components/components/submit-feedback/submit-feedback.component.js +71 -75
  47. package/esm2015/lib/shell-components/constants/api-urls.js +1052 -1052
  48. package/esm2015/lib/shell-components/constants/available-languages.js +25 -25
  49. package/esm2015/lib/shell-components/constants/channel-names.js +38 -38
  50. package/esm2015/lib/shell-components/constants/menu-categories.js +6 -6
  51. package/esm2015/lib/shell-components/constants/notification-routes.js +6 -6
  52. package/esm2015/lib/shell-components/constants/notification-type-ids.js +42 -42
  53. package/esm2015/lib/shell-components/enum/recentSearchType.enum.js +13 -13
  54. package/esm2015/lib/shell-components/models/AppMenuItemModel.js +3 -3
  55. package/esm2015/lib/shell-components/models/AppNotification.js +17 -17
  56. package/esm2015/lib/shell-components/models/AssetAssignedNotificationModel.js +12 -12
  57. package/esm2015/lib/shell-components/models/ChannelUpdateModel.js +3 -3
  58. package/esm2015/lib/shell-components/models/EmployeeStatusModel.js +3 -3
  59. package/esm2015/lib/shell-components/models/IAdjust-screen-options.js +2 -2
  60. package/esm2015/lib/shell-components/models/IBadge.js +2 -2
  61. package/esm2015/lib/shell-components/models/IChildItem.js +2 -2
  62. package/esm2015/lib/shell-components/models/ILayout-change-options.js +2 -2
  63. package/esm2015/lib/shell-components/models/IMenuItem.js +2 -2
  64. package/esm2015/lib/shell-components/models/IlayoutConf.js +2 -2
  65. package/esm2015/lib/shell-components/models/IntroModel.js +3 -3
  66. package/esm2015/lib/shell-components/models/MessageDetails.js +3 -3
  67. package/esm2015/lib/shell-components/models/MessageTypingDetails.js +3 -3
  68. package/esm2015/lib/shell-components/models/NewProjectCreatedNotificationModel.js +10 -10
  69. package/esm2015/lib/shell-components/models/NewProjectFeatureNotificationModel.js +10 -10
  70. package/esm2015/lib/shell-components/models/NotificationsOutPutModel.js +22 -22
  71. package/esm2015/lib/shell-components/models/ProjectSearchCriteriaInputModel.js +3 -3
  72. package/esm2015/lib/shell-components/models/RecentSearchModel.js +5 -5
  73. package/esm2015/lib/shell-components/models/ReportConfigAssignedNotification.js +11 -11
  74. package/esm2015/lib/shell-components/models/ReportSubmittedNotification.js +12 -12
  75. package/esm2015/lib/shell-components/models/RoleUpdatedNotification.js +9 -9
  76. package/esm2015/lib/shell-components/models/UserStoryAssignedNotification.js +13 -13
  77. package/esm2015/lib/shell-components/models/archiveUserStoryModel.js +10 -10
  78. package/esm2015/lib/shell-components/models/companieslist.model.js +3 -3
  79. package/esm2015/lib/shell-components/models/company-model.js +7 -7
  80. package/esm2015/lib/shell-components/models/company-payment-model.js +3 -3
  81. package/esm2015/lib/shell-components/models/dragedWidget.js +3 -3
  82. package/esm2015/lib/shell-components/models/employee-List.js +3 -3
  83. package/esm2015/lib/shell-components/models/employee.js +4 -4
  84. package/esm2015/lib/shell-components/models/entityRoleFeature.js +3 -3
  85. package/esm2015/lib/shell-components/models/export-configuration-model.js +3 -3
  86. package/esm2015/lib/shell-components/models/export-data.module.js +8 -8
  87. package/esm2015/lib/shell-components/models/goalApprovedNotificationModel.js +9 -9
  88. package/esm2015/lib/shell-components/models/import-configuration-model.js +3 -3
  89. package/esm2015/lib/shell-components/models/initialStatusofUsers.js +3 -3
  90. package/esm2015/lib/shell-components/models/invoiceOutput-model.js +3 -3
  91. package/esm2015/lib/shell-components/models/leaveApplicationNotifiction.js +9 -9
  92. package/esm2015/lib/shell-components/models/multiChartsScheduling.js +11 -11
  93. package/esm2015/lib/shell-components/models/parkUserStoryInputModel.js +10 -10
  94. package/esm2015/lib/shell-components/models/project.js +3 -3
  95. package/esm2015/lib/shell-components/models/recentSearchApiModel.js +3 -3
  96. package/esm2015/lib/shell-components/models/searchCriteriaInputModelBase.js +3 -3
  97. package/esm2015/lib/shell-components/models/shellModulesInfo.js +7 -7
  98. package/esm2015/lib/shell-components/models/softlabels-model.js +7 -7
  99. package/esm2015/lib/shell-components/models/sprintReplanRequestedModel.js +9 -9
  100. package/esm2015/lib/shell-components/models/sprintStartedNotificationModel.js +9 -9
  101. package/esm2015/lib/shell-components/models/store-model.js +3 -3
  102. package/esm2015/lib/shell-components/models/store-search-model.js +4 -4
  103. package/esm2015/lib/shell-components/models/themes.model.js +3 -3
  104. package/esm2015/lib/shell-components/models/timesheetenabledisable.js +4 -4
  105. package/esm2015/lib/shell-components/models/user.js +8 -8
  106. package/esm2015/lib/shell-components/models/userStory.js +3 -3
  107. package/esm2015/lib/shell-components/models/userStoryCommentNotificationModel.js +9 -9
  108. package/esm2015/lib/shell-components/models/userStoryUpdateNotificationModel.js +9 -9
  109. package/esm2015/lib/shell-components/models/userstory-custom-fields.model.js +3 -3
  110. package/esm2015/lib/shell-components/models/validation.model.js +2 -2
  111. package/esm2015/lib/shell-components/models/widgetlist.js +6 -6
  112. package/esm2015/lib/shell-components/models/workspaceList.js +3 -3
  113. package/esm2015/lib/shell-components/services/authentication.service.js +96 -96
  114. package/esm2015/lib/shell-components/services/chat.service.js +67 -67
  115. package/esm2015/lib/shell-components/services/common-used.service.js +263 -263
  116. package/esm2015/lib/shell-components/services/feature.service.js +101 -101
  117. package/esm2015/lib/shell-components/services/google-analytics.service.js +24 -24
  118. package/esm2015/lib/shell-components/services/layout.service.js +68 -68
  119. package/esm2015/lib/shell-components/services/payment.service.js +103 -103
  120. package/esm2015/lib/shell-components/services/recentSearch.service.js +90 -90
  121. package/esm2015/lib/shell-components/services/shell.modules.service.js +24 -24
  122. package/esm2015/lib/shell-components/services/signalr.service.js +113 -113
  123. package/esm2015/lib/shell-components/services/theme.service.js +228 -161
  124. package/esm2015/lib/shell-components/shell.module.js +449 -450
  125. package/esm2015/lib/shell-components/shell.routing.js +16 -16
  126. package/esm2015/lib/shell-components/store/actions/authentication.actions.js +260 -260
  127. package/esm2015/lib/shell-components/store/actions/chat.actions.js +248 -248
  128. package/esm2015/lib/shell-components/store/actions/menuitems.actions.js +39 -39
  129. package/esm2015/lib/shell-components/store/actions/notification-validator.action.js +19 -19
  130. package/esm2015/lib/shell-components/store/actions/notifications.actions.js +74 -74
  131. package/esm2015/lib/shell-components/store/effects/authentication.effects.js +503 -503
  132. package/esm2015/lib/shell-components/store/effects/chat.effects.js +139 -139
  133. package/esm2015/lib/shell-components/store/effects/index.js +13 -13
  134. package/esm2015/lib/shell-components/store/effects/menuitems.effects.js +53 -53
  135. package/esm2015/lib/shell-components/store/effects/notification-validator.effects.js +56 -56
  136. package/esm2015/lib/shell-components/store/effects/notifications.effects.js +116 -116
  137. package/esm2015/lib/shell-components/store/reducers/authentication.reducers.js +86 -86
  138. package/esm2015/lib/shell-components/store/reducers/chat.reducers.js +68 -68
  139. package/esm2015/lib/shell-components/store/reducers/index.js +80 -80
  140. package/esm2015/lib/shell-components/store/reducers/menuitems.reducers.js +56 -56
  141. package/esm2015/lib/shell-components/store/reducers/notification-validator.reducers.js +13 -13
  142. package/esm2015/lib/shell-components/store/reducers/notifications.reducers.js +38 -38
  143. package/esm2015/public-api.js +92 -92
  144. package/esm2015/store/reducers/index.js +47 -47
  145. package/esm2015/thetradeengineorg1-snova-shell-module.js +4 -4
  146. package/fesm2015/thetradeengineorg1-snova-shell-module.js +12640 -17069
  147. package/fesm2015/thetradeengineorg1-snova-shell-module.js.map +1 -1
  148. package/lib/globaldependencies/components/avatar.component.d.ts +10 -11
  149. package/lib/globaldependencies/components/componentbase.d.ts +455 -456
  150. package/lib/globaldependencies/constants/feature-ids.d.ts +448 -449
  151. package/lib/globaldependencies/constants/localstorage-properties.d.ts +37 -38
  152. package/lib/globaldependencies/helpers/dom.helper.d.ts +7 -8
  153. package/lib/globaldependencies/helpers/fontawesome-icons.d.ts +1 -2
  154. package/lib/globaldependencies/helpers/moment-utc-date-adapter.d.ts +9 -10
  155. package/lib/globaldependencies/helpers/window.helper.d.ts +12 -13
  156. package/lib/globaldependencies/intercepter/jwt.interceptor.d.ts +11 -12
  157. package/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.d.ts +8 -9
  158. package/lib/globaldependencies/pipes/highLightText.pipe.d.ts +8 -9
  159. package/lib/globaldependencies/pipes/orderby-pipe.d.ts +9 -10
  160. package/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.d.ts +8 -9
  161. package/lib/globaldependencies/pipes/sanitize.pipe.d.ts +11 -12
  162. package/lib/globaldependencies/pipes/softlabels.pipes.d.ts +8 -9
  163. package/lib/globaldependencies/pipes/utctolocaltime.pipe.d.ts +8 -9
  164. package/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.d.ts +8 -9
  165. package/lib/globaldependencies/pipes/workflowstatus.pipes.d.ts +8 -9
  166. package/lib/shell-components/components/Payments/account.component.d.ts +14 -15
  167. package/lib/shell-components/components/Payments/company-information.d.ts +62 -63
  168. package/lib/shell-components/components/Payments/company-plans.component.d.ts +47 -48
  169. package/lib/shell-components/components/Payments/document.component.d.ts +20 -21
  170. package/lib/shell-components/components/Payments/payment-method.component.d.ts +15 -16
  171. package/lib/shell-components/components/Payments/product-service.component.d.ts +48 -49
  172. package/lib/shell-components/components/Payments/purchase-more-licenses.d.ts +37 -38
  173. package/lib/shell-components/components/Payments/transactions.component.d.ts +28 -29
  174. package/lib/shell-components/components/admin-layout/admin-layout.component.d.ts +67 -68
  175. package/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.d.ts +32 -33
  176. package/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.d.ts +32 -33
  177. package/lib/shell-components/components/export-import-configuration/export-configuration.component.d.ts +60 -61
  178. package/lib/shell-components/components/feed-time/feed-time-dialog.component.d.ts +33 -34
  179. package/lib/shell-components/components/feed-time/feed-time.component.d.ts +27 -28
  180. package/lib/shell-components/components/header-side/header-side.component.d.ts +220 -221
  181. package/lib/shell-components/components/header-top/header-top.component.d.ts +40 -41
  182. package/lib/shell-components/components/lives/lives-welcome-page.d.ts +14 -15
  183. package/lib/shell-components/components/menu/menu.component.d.ts +220 -221
  184. package/lib/shell-components/components/menu/searchTask.enum.d.ts +8 -9
  185. package/lib/shell-components/components/notifications/announcement-dialog.component.d.ts +27 -28
  186. package/lib/shell-components/components/notifications/notifications.component.d.ts +53 -54
  187. package/lib/shell-components/components/sidebar-top/sidebar-top.component.d.ts +10 -11
  188. package/lib/shell-components/components/sidenav/side-bar.component.d.ts +23 -24
  189. package/lib/shell-components/components/sidenav/sidenav.component.d.ts +17 -18
  190. package/lib/shell-components/components/submit-feedback/submit-feedback.component.d.ts +25 -26
  191. package/lib/shell-components/constants/api-urls.d.ts +1051 -1052
  192. package/lib/shell-components/constants/available-languages.d.ts +7 -8
  193. package/lib/shell-components/constants/channel-names.d.ts +37 -38
  194. package/lib/shell-components/constants/menu-categories.d.ts +5 -6
  195. package/lib/shell-components/constants/notification-routes.d.ts +5 -6
  196. package/lib/shell-components/constants/notification-type-ids.d.ts +41 -42
  197. package/lib/shell-components/enum/recentSearchType.enum.d.ts +11 -12
  198. package/lib/shell-components/models/AppMenuItemModel.d.ts +12 -13
  199. package/lib/shell-components/models/AppNotification.d.ts +12 -13
  200. package/lib/shell-components/models/AssetAssignedNotificationModel.d.ts +10 -11
  201. package/lib/shell-components/models/ChannelUpdateModel.d.ts +47 -48
  202. package/lib/shell-components/models/EmployeeStatusModel.d.ts +11 -12
  203. package/lib/shell-components/models/IAdjust-screen-options.d.ts +4 -5
  204. package/lib/shell-components/models/IBadge.d.ts +4 -5
  205. package/lib/shell-components/models/IChildItem.d.ts +7 -8
  206. package/lib/shell-components/models/ILayout-change-options.d.ts +4 -5
  207. package/lib/shell-components/models/IMenuItem.d.ts +14 -15
  208. package/lib/shell-components/models/IlayoutConf.d.ts +10 -11
  209. package/lib/shell-components/models/IntroModel.d.ts +3 -4
  210. package/lib/shell-components/models/MessageDetails.d.ts +55 -56
  211. package/lib/shell-components/models/MessageTypingDetails.d.ts +9 -10
  212. package/lib/shell-components/models/NewProjectCreatedNotificationModel.d.ts +8 -9
  213. package/lib/shell-components/models/NewProjectFeatureNotificationModel.d.ts +8 -9
  214. package/lib/shell-components/models/NotificationsOutPutModel.d.ts +41 -42
  215. package/lib/shell-components/models/ProjectSearchCriteriaInputModel.d.ts +10 -11
  216. package/lib/shell-components/models/RecentSearchModel.d.ts +14 -15
  217. package/lib/shell-components/models/ReportConfigAssignedNotification.d.ts +9 -10
  218. package/lib/shell-components/models/ReportSubmittedNotification.d.ts +10 -11
  219. package/lib/shell-components/models/RoleUpdatedNotification.d.ts +7 -8
  220. package/lib/shell-components/models/UserStoryAssignedNotification.d.ts +8 -9
  221. package/lib/shell-components/models/archiveUserStoryModel.d.ts +7 -8
  222. package/lib/shell-components/models/companieslist.model.d.ts +8 -9
  223. package/lib/shell-components/models/company-model.d.ts +31 -32
  224. package/lib/shell-components/models/company-payment-model.d.ts +18 -19
  225. package/lib/shell-components/models/dragedWidget.d.ts +16 -17
  226. package/lib/shell-components/models/employee-List.d.ts +8 -9
  227. package/lib/shell-components/models/employee.d.ts +60 -61
  228. package/lib/shell-components/models/entityRoleFeature.d.ts +9 -10
  229. package/lib/shell-components/models/export-configuration-model.d.ts +8 -9
  230. package/lib/shell-components/models/export-data.module.d.ts +6 -7
  231. package/lib/shell-components/models/goalApprovedNotificationModel.d.ts +8 -9
  232. package/lib/shell-components/models/import-configuration-model.d.ts +3 -4
  233. package/lib/shell-components/models/initialStatusofUsers.d.ts +5 -6
  234. package/lib/shell-components/models/invoiceOutput-model.d.ts +9 -10
  235. package/lib/shell-components/models/leaveApplicationNotifiction.d.ts +7 -8
  236. package/lib/shell-components/models/multiChartsScheduling.d.ts +9 -10
  237. package/lib/shell-components/models/parkUserStoryInputModel.d.ts +7 -8
  238. package/lib/shell-components/models/project.d.ts +28 -29
  239. package/lib/shell-components/models/recentSearchApiModel.d.ts +6 -7
  240. package/lib/shell-components/models/searchCriteriaInputModelBase.d.ts +10 -11
  241. package/lib/shell-components/models/shellModulesInfo.d.ts +16 -17
  242. package/lib/shell-components/models/softlabels-model.d.ts +66 -67
  243. package/lib/shell-components/models/sprintReplanRequestedModel.d.ts +7 -8
  244. package/lib/shell-components/models/sprintStartedNotificationModel.d.ts +7 -8
  245. package/lib/shell-components/models/store-model.d.ts +13 -14
  246. package/lib/shell-components/models/store-search-model.d.ts +7 -8
  247. package/lib/shell-components/models/themes.model.d.ts +9 -10
  248. package/lib/shell-components/models/timesheetenabledisable.d.ts +16 -17
  249. package/lib/shell-components/models/user.d.ts +40 -41
  250. package/lib/shell-components/models/userStory.d.ts +188 -189
  251. package/lib/shell-components/models/userStoryCommentNotificationModel.d.ts +6 -7
  252. package/lib/shell-components/models/userStoryUpdateNotificationModel.d.ts +6 -7
  253. package/lib/shell-components/models/userstory-custom-fields.model.d.ts +6 -7
  254. package/lib/shell-components/models/validation.model.d.ts +5 -6
  255. package/lib/shell-components/models/widgetlist.d.ts +28 -29
  256. package/lib/shell-components/models/workspaceList.d.ts +19 -20
  257. package/lib/shell-components/services/authentication.service.d.ts +18 -19
  258. package/lib/shell-components/services/chat.service.d.ts +16 -17
  259. package/lib/shell-components/services/common-used.service.d.ts +45 -46
  260. package/lib/shell-components/services/feature.service.d.ts +19 -20
  261. package/lib/shell-components/services/google-analytics.service.d.ts +9 -10
  262. package/lib/shell-components/services/layout.service.d.ts +23 -24
  263. package/lib/shell-components/services/payment.service.d.ts +19 -20
  264. package/lib/shell-components/services/recentSearch.service.d.ts +16 -17
  265. package/lib/shell-components/services/shell.modules.service.d.ts +9 -10
  266. package/lib/shell-components/services/signalr.service.d.ts +25 -26
  267. package/lib/shell-components/services/theme.service.d.ts +14 -15
  268. package/lib/shell-components/shell.module.d.ts +119 -120
  269. package/lib/shell-components/shell.routing.d.ts +2 -3
  270. package/lib/shell-components/store/actions/authentication.actions.d.ts +327 -328
  271. package/lib/shell-components/store/actions/chat.actions.d.ts +399 -400
  272. package/lib/shell-components/store/actions/menuitems.actions.d.ts +51 -52
  273. package/lib/shell-components/store/actions/notification-validator.action.d.ts +25 -26
  274. package/lib/shell-components/store/actions/notifications.actions.d.ts +116 -117
  275. package/lib/shell-components/store/effects/authentication.effects.d.ts +54 -55
  276. package/lib/shell-components/store/effects/chat.effects.d.ts +30 -31
  277. package/lib/shell-components/store/effects/index.d.ts +1 -2
  278. package/lib/shell-components/store/effects/menuitems.effects.d.ts +17 -18
  279. package/lib/shell-components/store/effects/notification-validator.effects.d.ts +21 -22
  280. package/lib/shell-components/store/effects/notifications.effects.d.ts +23 -24
  281. package/lib/shell-components/store/reducers/authentication.reducers.d.ts +30 -31
  282. package/lib/shell-components/store/reducers/chat.reducers.d.ts +17 -18
  283. package/lib/shell-components/store/reducers/index.d.ts +59 -60
  284. package/lib/shell-components/store/reducers/menuitems.reducers.d.ts +11 -12
  285. package/lib/shell-components/store/reducers/notification-validator.reducers.d.ts +5 -6
  286. package/lib/shell-components/store/reducers/notifications.reducers.d.ts +10 -11
  287. package/package.json +2 -5
  288. package/public-api.d.ts +82 -83
  289. package/store/reducers/index.d.ts +24 -25
  290. package/thetradeengineorg1-snova-shell-module.d.ts +5 -6
  291. package/lib/globaldependencies/components/avatar.component.d.ts.map +0 -1
  292. package/lib/globaldependencies/components/componentbase.d.ts.map +0 -1
  293. package/lib/globaldependencies/constants/feature-ids.d.ts.map +0 -1
  294. package/lib/globaldependencies/constants/localstorage-properties.d.ts.map +0 -1
  295. package/lib/globaldependencies/helpers/dom.helper.d.ts.map +0 -1
  296. package/lib/globaldependencies/helpers/fontawesome-icons.d.ts.map +0 -1
  297. package/lib/globaldependencies/helpers/moment-utc-date-adapter.d.ts.map +0 -1
  298. package/lib/globaldependencies/helpers/window.helper.d.ts.map +0 -1
  299. package/lib/globaldependencies/intercepter/jwt.interceptor.d.ts.map +0 -1
  300. package/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.d.ts.map +0 -1
  301. package/lib/globaldependencies/pipes/highLightText.pipe.d.ts.map +0 -1
  302. package/lib/globaldependencies/pipes/orderby-pipe.d.ts.map +0 -1
  303. package/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.d.ts.map +0 -1
  304. package/lib/globaldependencies/pipes/sanitize.pipe.d.ts.map +0 -1
  305. package/lib/globaldependencies/pipes/softlabels.pipes.d.ts.map +0 -1
  306. package/lib/globaldependencies/pipes/utctolocaltime.pipe.d.ts.map +0 -1
  307. package/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.d.ts.map +0 -1
  308. package/lib/globaldependencies/pipes/workflowstatus.pipes.d.ts.map +0 -1
  309. package/lib/shell-components/components/Payments/account.component.d.ts.map +0 -1
  310. package/lib/shell-components/components/Payments/company-information.d.ts.map +0 -1
  311. package/lib/shell-components/components/Payments/company-plans.component.d.ts.map +0 -1
  312. package/lib/shell-components/components/Payments/document.component.d.ts.map +0 -1
  313. package/lib/shell-components/components/Payments/payment-method.component.d.ts.map +0 -1
  314. package/lib/shell-components/components/Payments/product-service.component.d.ts.map +0 -1
  315. package/lib/shell-components/components/Payments/purchase-more-licenses.d.ts.map +0 -1
  316. package/lib/shell-components/components/Payments/transactions.component.d.ts.map +0 -1
  317. package/lib/shell-components/components/admin-layout/admin-layout.component.d.ts.map +0 -1
  318. package/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.d.ts.map +0 -1
  319. package/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.d.ts.map +0 -1
  320. package/lib/shell-components/components/export-import-configuration/export-configuration.component.d.ts.map +0 -1
  321. package/lib/shell-components/components/feed-time/feed-time-dialog.component.d.ts.map +0 -1
  322. package/lib/shell-components/components/feed-time/feed-time.component.d.ts.map +0 -1
  323. package/lib/shell-components/components/header-side/header-side.component.d.ts.map +0 -1
  324. package/lib/shell-components/components/header-top/header-top.component.d.ts.map +0 -1
  325. package/lib/shell-components/components/lives/lives-welcome-page.d.ts.map +0 -1
  326. package/lib/shell-components/components/menu/menu.component.d.ts.map +0 -1
  327. package/lib/shell-components/components/menu/searchTask.enum.d.ts.map +0 -1
  328. package/lib/shell-components/components/notifications/announcement-dialog.component.d.ts.map +0 -1
  329. package/lib/shell-components/components/notifications/notifications.component.d.ts.map +0 -1
  330. package/lib/shell-components/components/sidebar-top/sidebar-top.component.d.ts.map +0 -1
  331. package/lib/shell-components/components/sidenav/side-bar.component.d.ts.map +0 -1
  332. package/lib/shell-components/components/sidenav/sidenav.component.d.ts.map +0 -1
  333. package/lib/shell-components/components/submit-feedback/submit-feedback.component.d.ts.map +0 -1
  334. package/lib/shell-components/constants/api-urls.d.ts.map +0 -1
  335. package/lib/shell-components/constants/available-languages.d.ts.map +0 -1
  336. package/lib/shell-components/constants/channel-names.d.ts.map +0 -1
  337. package/lib/shell-components/constants/menu-categories.d.ts.map +0 -1
  338. package/lib/shell-components/constants/notification-routes.d.ts.map +0 -1
  339. package/lib/shell-components/constants/notification-type-ids.d.ts.map +0 -1
  340. package/lib/shell-components/enum/recentSearchType.enum.d.ts.map +0 -1
  341. package/lib/shell-components/models/AppMenuItemModel.d.ts.map +0 -1
  342. package/lib/shell-components/models/AppNotification.d.ts.map +0 -1
  343. package/lib/shell-components/models/AssetAssignedNotificationModel.d.ts.map +0 -1
  344. package/lib/shell-components/models/ChannelUpdateModel.d.ts.map +0 -1
  345. package/lib/shell-components/models/EmployeeStatusModel.d.ts.map +0 -1
  346. package/lib/shell-components/models/IAdjust-screen-options.d.ts.map +0 -1
  347. package/lib/shell-components/models/IBadge.d.ts.map +0 -1
  348. package/lib/shell-components/models/IChildItem.d.ts.map +0 -1
  349. package/lib/shell-components/models/ILayout-change-options.d.ts.map +0 -1
  350. package/lib/shell-components/models/IMenuItem.d.ts.map +0 -1
  351. package/lib/shell-components/models/IlayoutConf.d.ts.map +0 -1
  352. package/lib/shell-components/models/IntroModel.d.ts.map +0 -1
  353. package/lib/shell-components/models/MessageDetails.d.ts.map +0 -1
  354. package/lib/shell-components/models/MessageTypingDetails.d.ts.map +0 -1
  355. package/lib/shell-components/models/NewProjectCreatedNotificationModel.d.ts.map +0 -1
  356. package/lib/shell-components/models/NewProjectFeatureNotificationModel.d.ts.map +0 -1
  357. package/lib/shell-components/models/NotificationsOutPutModel.d.ts.map +0 -1
  358. package/lib/shell-components/models/ProjectSearchCriteriaInputModel.d.ts.map +0 -1
  359. package/lib/shell-components/models/RecentSearchModel.d.ts.map +0 -1
  360. package/lib/shell-components/models/ReportConfigAssignedNotification.d.ts.map +0 -1
  361. package/lib/shell-components/models/ReportSubmittedNotification.d.ts.map +0 -1
  362. package/lib/shell-components/models/RoleUpdatedNotification.d.ts.map +0 -1
  363. package/lib/shell-components/models/UserStoryAssignedNotification.d.ts.map +0 -1
  364. package/lib/shell-components/models/archiveUserStoryModel.d.ts.map +0 -1
  365. package/lib/shell-components/models/companieslist.model.d.ts.map +0 -1
  366. package/lib/shell-components/models/company-model.d.ts.map +0 -1
  367. package/lib/shell-components/models/company-payment-model.d.ts.map +0 -1
  368. package/lib/shell-components/models/dragedWidget.d.ts.map +0 -1
  369. package/lib/shell-components/models/employee-List.d.ts.map +0 -1
  370. package/lib/shell-components/models/employee.d.ts.map +0 -1
  371. package/lib/shell-components/models/entityRoleFeature.d.ts.map +0 -1
  372. package/lib/shell-components/models/export-configuration-model.d.ts.map +0 -1
  373. package/lib/shell-components/models/export-data.module.d.ts.map +0 -1
  374. package/lib/shell-components/models/goalApprovedNotificationModel.d.ts.map +0 -1
  375. package/lib/shell-components/models/import-configuration-model.d.ts.map +0 -1
  376. package/lib/shell-components/models/initialStatusofUsers.d.ts.map +0 -1
  377. package/lib/shell-components/models/invoiceOutput-model.d.ts.map +0 -1
  378. package/lib/shell-components/models/leaveApplicationNotifiction.d.ts.map +0 -1
  379. package/lib/shell-components/models/multiChartsScheduling.d.ts.map +0 -1
  380. package/lib/shell-components/models/parkUserStoryInputModel.d.ts.map +0 -1
  381. package/lib/shell-components/models/project.d.ts.map +0 -1
  382. package/lib/shell-components/models/recentSearchApiModel.d.ts.map +0 -1
  383. package/lib/shell-components/models/searchCriteriaInputModelBase.d.ts.map +0 -1
  384. package/lib/shell-components/models/shellModulesInfo.d.ts.map +0 -1
  385. package/lib/shell-components/models/softlabels-model.d.ts.map +0 -1
  386. package/lib/shell-components/models/sprintReplanRequestedModel.d.ts.map +0 -1
  387. package/lib/shell-components/models/sprintStartedNotificationModel.d.ts.map +0 -1
  388. package/lib/shell-components/models/store-model.d.ts.map +0 -1
  389. package/lib/shell-components/models/store-search-model.d.ts.map +0 -1
  390. package/lib/shell-components/models/themes.model.d.ts.map +0 -1
  391. package/lib/shell-components/models/timesheetenabledisable.d.ts.map +0 -1
  392. package/lib/shell-components/models/user.d.ts.map +0 -1
  393. package/lib/shell-components/models/userStory.d.ts.map +0 -1
  394. package/lib/shell-components/models/userStoryCommentNotificationModel.d.ts.map +0 -1
  395. package/lib/shell-components/models/userStoryUpdateNotificationModel.d.ts.map +0 -1
  396. package/lib/shell-components/models/userstory-custom-fields.model.d.ts.map +0 -1
  397. package/lib/shell-components/models/validation.model.d.ts.map +0 -1
  398. package/lib/shell-components/models/widgetlist.d.ts.map +0 -1
  399. package/lib/shell-components/models/workspaceList.d.ts.map +0 -1
  400. package/lib/shell-components/services/authentication.service.d.ts.map +0 -1
  401. package/lib/shell-components/services/chat.service.d.ts.map +0 -1
  402. package/lib/shell-components/services/common-used.service.d.ts.map +0 -1
  403. package/lib/shell-components/services/feature.service.d.ts.map +0 -1
  404. package/lib/shell-components/services/google-analytics.service.d.ts.map +0 -1
  405. package/lib/shell-components/services/layout.service.d.ts.map +0 -1
  406. package/lib/shell-components/services/payment.service.d.ts.map +0 -1
  407. package/lib/shell-components/services/recentSearch.service.d.ts.map +0 -1
  408. package/lib/shell-components/services/shell.modules.service.d.ts.map +0 -1
  409. package/lib/shell-components/services/signalr.service.d.ts.map +0 -1
  410. package/lib/shell-components/services/theme.service.d.ts.map +0 -1
  411. package/lib/shell-components/shell.module.d.ts.map +0 -1
  412. package/lib/shell-components/shell.routing.d.ts.map +0 -1
  413. package/lib/shell-components/store/actions/authentication.actions.d.ts.map +0 -1
  414. package/lib/shell-components/store/actions/chat.actions.d.ts.map +0 -1
  415. package/lib/shell-components/store/actions/menuitems.actions.d.ts.map +0 -1
  416. package/lib/shell-components/store/actions/notification-validator.action.d.ts.map +0 -1
  417. package/lib/shell-components/store/actions/notifications.actions.d.ts.map +0 -1
  418. package/lib/shell-components/store/effects/authentication.effects.d.ts.map +0 -1
  419. package/lib/shell-components/store/effects/chat.effects.d.ts.map +0 -1
  420. package/lib/shell-components/store/effects/index.d.ts.map +0 -1
  421. package/lib/shell-components/store/effects/menuitems.effects.d.ts.map +0 -1
  422. package/lib/shell-components/store/effects/notification-validator.effects.d.ts.map +0 -1
  423. package/lib/shell-components/store/effects/notifications.effects.d.ts.map +0 -1
  424. package/lib/shell-components/store/reducers/authentication.reducers.d.ts.map +0 -1
  425. package/lib/shell-components/store/reducers/chat.reducers.d.ts.map +0 -1
  426. package/lib/shell-components/store/reducers/index.d.ts.map +0 -1
  427. package/lib/shell-components/store/reducers/menuitems.reducers.d.ts.map +0 -1
  428. package/lib/shell-components/store/reducers/notification-validator.reducers.d.ts.map +0 -1
  429. package/lib/shell-components/store/reducers/notifications.reducers.d.ts.map +0 -1
  430. package/public-api.d.ts.map +0 -1
  431. package/store/reducers/index.d.ts.map +0 -1
  432. package/thetradeengineorg1-snova-shell-module.d.ts.map +0 -1
@@ -1,489 +1,93 @@
1
- import { Component, Input } from "@angular/core";
2
- import { select } from "@ngrx/store";
3
- import * as sharedModuleReducers from "../../store/reducers/index";
4
- import '../../../globaldependencies/helpers/fontawesome-icons';
5
- import { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../services/layout.service";
8
- import * as i2 from "../../services/theme.service";
9
- import * as i3 from "@ngx-translate/core";
10
- import * as i4 from "@ngrx/store";
11
- import * as i5 from "ngx-cookie-service";
12
- import * as i6 from "@angular/common";
13
- import * as i7 from "@angular/flex-layout/flex";
14
- import * as i8 from "@angular/material/menu";
15
- import * as i9 from "@angular/material/button";
16
- import * as i10 from "@angular/material/tooltip";
17
- import * as i11 from "@angular/material/icon";
18
- import * as i12 from "@angular/material/grid-list";
19
- import * as i13 from "@angular/router";
20
- import * as i14 from "@angular/material/select";
21
- import * as i15 from "@angular/forms";
22
- import * as i16 from "@angular/material/core";
23
- function HeaderTopComponent_ul_5_li_1_div_1_a_1_Template(rf, ctx) { if (rf & 1) {
24
- i0.ɵɵelementStart(0, "a", 29);
25
- i0.ɵɵelementStart(1, "mat-icon");
26
- i0.ɵɵtext(2);
27
- i0.ɵɵelementEnd();
28
- i0.ɵɵtext(3);
29
- i0.ɵɵpipe(4, "translate");
30
- i0.ɵɵelementEnd();
31
- } if (rf & 2) {
32
- const item_r10 = i0.ɵɵnextContext(2).$implicit;
33
- i0.ɵɵpropertyInterpolate1("routerLink", "/", item_r10.state, "");
34
- i0.ɵɵadvance(2);
35
- i0.ɵɵtextInterpolate(item_r10.icon);
36
- i0.ɵɵadvance(1);
37
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 3, item_r10.name), " ");
38
- } }
39
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_a_1_Template(rf, ctx) { if (rf & 1) {
40
- i0.ɵɵelementStart(0, "a", 35);
41
- i0.ɵɵelementStart(1, "span", 36);
42
- i0.ɵɵtext(2);
43
- i0.ɵɵpipe(3, "translate");
44
- i0.ɵɵelementEnd();
45
- i0.ɵɵelement(4, "span", 6);
46
- i0.ɵɵelementEnd();
47
- } if (rf & 2) {
48
- const itemLvL2_r17 = i0.ɵɵnextContext().$implicit;
49
- i0.ɵɵpropertyInterpolate("routerLink", itemLvL2_r17.state ? "/" + itemLvL2_r17.state : "");
50
- i0.ɵɵadvance(2);
51
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, itemLvL2_r17.name), " ");
52
- } }
53
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_a_2_mat_icon_1_Template(rf, ctx) { if (rf & 1) {
54
- i0.ɵɵelementStart(0, "mat-icon");
55
- i0.ɵɵtext(1);
56
- i0.ɵɵelementEnd();
57
- } if (rf & 2) {
58
- const itemLvL2_r17 = i0.ɵɵnextContext(2).$implicit;
59
- i0.ɵɵadvance(1);
60
- i0.ɵɵtextInterpolate(itemLvL2_r17.icon);
61
- } }
62
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_a_2_Template(rf, ctx) { if (rf & 1) {
63
- i0.ɵɵelementStart(0, "a", 29);
64
- i0.ɵɵtemplate(1, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_a_2_mat_icon_1_Template, 2, 1, "mat-icon", 28);
65
- i0.ɵɵtext(2);
66
- i0.ɵɵpipe(3, "translate");
67
- i0.ɵɵelementEnd();
68
- } if (rf & 2) {
69
- const itemLvL2_r17 = i0.ɵɵnextContext().$implicit;
70
- const item_r10 = i0.ɵɵnextContext(3).$implicit;
71
- i0.ɵɵpropertyInterpolate2("routerLink", "", item_r10.state ? "/" + item_r10.state : "", "/", itemLvL2_r17.state, "");
72
- i0.ɵɵadvance(1);
73
- i0.ɵɵproperty("ngIf", itemLvL2_r17.icon);
74
- i0.ɵɵadvance(1);
75
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 4, itemLvL2_r17.name), " ");
76
- } }
77
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_mat_icon_5_Template(rf, ctx) { if (rf & 1) {
78
- i0.ɵɵelementStart(0, "mat-icon");
79
- i0.ɵɵtext(1);
80
- i0.ɵɵelementEnd();
81
- } if (rf & 2) {
82
- const itemLvL2_r17 = i0.ɵɵnextContext(2).$implicit;
83
- i0.ɵɵadvance(1);
84
- i0.ɵɵtextInterpolate(itemLvL2_r17.icon);
85
- } }
86
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_li_10_mat_icon_2_Template(rf, ctx) { if (rf & 1) {
87
- i0.ɵɵelementStart(0, "mat-icon");
88
- i0.ɵɵtext(1);
89
- i0.ɵɵelementEnd();
90
- } if (rf & 2) {
91
- const itemLvL3_r30 = i0.ɵɵnextContext().$implicit;
92
- i0.ɵɵadvance(1);
93
- i0.ɵɵtextInterpolate(itemLvL3_r30.icon);
94
- } }
95
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_li_10_Template(rf, ctx) { if (rf & 1) {
96
- i0.ɵɵelementStart(0, "li", 26);
97
- i0.ɵɵelementStart(1, "a", 29);
98
- i0.ɵɵtemplate(2, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_li_10_mat_icon_2_Template, 2, 1, "mat-icon", 28);
99
- i0.ɵɵtext(3);
100
- i0.ɵɵpipe(4, "translate");
101
- i0.ɵɵelementEnd();
102
- i0.ɵɵelementEnd();
103
- } if (rf & 2) {
104
- const itemLvL3_r30 = ctx.$implicit;
105
- const itemLvL2_r17 = i0.ɵɵnextContext(2).$implicit;
106
- const item_r10 = i0.ɵɵnextContext(3).$implicit;
107
- i0.ɵɵadvance(1);
108
- i0.ɵɵpropertyInterpolate3("routerLink", "", item_r10.state ? "/" + item_r10.state : "", "", itemLvL2_r17.state ? "/" + itemLvL2_r17.state : "", "/", itemLvL3_r30.state, "");
109
- i0.ɵɵadvance(1);
110
- i0.ɵɵproperty("ngIf", itemLvL3_r30.icon);
111
- i0.ɵɵadvance(1);
112
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 5, itemLvL3_r30.name), " ");
113
- } }
114
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_Template(rf, ctx) { if (rf & 1) {
115
- i0.ɵɵelementStart(0, "div");
116
- i0.ɵɵelementStart(1, "label", 30);
117
- i0.ɵɵtext(2);
118
- i0.ɵɵpipe(3, "translate");
119
- i0.ɵɵelementEnd();
120
- i0.ɵɵelementStart(4, "a", 31);
121
- i0.ɵɵtemplate(5, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_mat_icon_5_Template, 2, 1, "mat-icon", 28);
122
- i0.ɵɵtext(6);
123
- i0.ɵɵpipe(7, "translate");
124
- i0.ɵɵelementEnd();
125
- i0.ɵɵelement(8, "input", 32);
126
- i0.ɵɵelementStart(9, "ul");
127
- i0.ɵɵtemplate(10, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_li_10_Template, 5, 7, "li", 33);
128
- i0.ɵɵelementEnd();
129
- i0.ɵɵelementEnd();
130
- } if (rf & 2) {
131
- const ctx_r36 = i0.ɵɵnextContext();
132
- const j_r18 = ctx_r36.index;
133
- const itemLvL2_r17 = ctx_r36.$implicit;
134
- const i_r11 = i0.ɵɵnextContext(3).index;
135
- i0.ɵɵadvance(1);
136
- i0.ɵɵpropertyInterpolate2("for", "drop-", i_r11, "", j_r18, "");
137
- i0.ɵɵadvance(1);
138
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 8, itemLvL2_r17.name));
139
- i0.ɵɵadvance(3);
140
- i0.ɵɵproperty("ngIf", itemLvL2_r17.icon);
141
- i0.ɵɵadvance(1);
142
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(7, 10, itemLvL2_r17.name), " ");
143
- i0.ɵɵadvance(2);
144
- i0.ɵɵpropertyInterpolate2("id", "drop-", i_r11, "", j_r18, "");
145
- i0.ɵɵadvance(2);
146
- i0.ɵɵproperty("ngForOf", itemLvL2_r17.sub);
147
- } }
148
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_Template(rf, ctx) { if (rf & 1) {
149
- i0.ɵɵelementStart(0, "li", 26);
150
- i0.ɵɵtemplate(1, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_a_1_Template, 5, 4, "a", 34);
151
- i0.ɵɵtemplate(2, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_a_2_Template, 4, 6, "a", 27);
152
- i0.ɵɵtemplate(3, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_div_3_Template, 11, 12, "div", 28);
153
- i0.ɵɵelementEnd();
154
- } if (rf & 2) {
155
- const itemLvL2_r17 = ctx.$implicit;
156
- i0.ɵɵadvance(1);
157
- i0.ɵɵproperty("ngIf", itemLvL2_r17.type === "applicationlink");
158
- i0.ɵɵadvance(1);
159
- i0.ɵɵproperty("ngIf", itemLvL2_r17.type !== "dropDown" && itemLvL2_r17.type !== "applicationlink");
160
- i0.ɵɵadvance(1);
161
- i0.ɵɵproperty("ngIf", itemLvL2_r17.type === "dropDown");
162
- } }
163
- function HeaderTopComponent_ul_5_li_1_div_1_div_2_Template(rf, ctx) { if (rf & 1) {
164
- i0.ɵɵelementStart(0, "div");
165
- i0.ɵɵelementStart(1, "label", 30);
166
- i0.ɵɵelementStart(2, "mat-icon");
167
- i0.ɵɵtext(3);
168
- i0.ɵɵelementEnd();
169
- i0.ɵɵtext(4);
170
- i0.ɵɵpipe(5, "translate");
171
- i0.ɵɵelementEnd();
172
- i0.ɵɵelementStart(6, "a", 31);
173
- i0.ɵɵelementStart(7, "mat-icon");
174
- i0.ɵɵtext(8);
175
- i0.ɵɵelementEnd();
176
- i0.ɵɵtext(9);
177
- i0.ɵɵpipe(10, "translate");
178
- i0.ɵɵelementEnd();
179
- i0.ɵɵelement(11, "input", 32);
180
- i0.ɵɵelementStart(12, "ul");
181
- i0.ɵɵtemplate(13, HeaderTopComponent_ul_5_li_1_div_1_div_2_li_13_Template, 4, 3, "li", 33);
182
- i0.ɵɵelementEnd();
183
- i0.ɵɵelementEnd();
184
- } if (rf & 2) {
185
- const ctx_r37 = i0.ɵɵnextContext(2);
186
- const i_r11 = ctx_r37.index;
187
- const item_r10 = ctx_r37.$implicit;
188
- i0.ɵɵadvance(1);
189
- i0.ɵɵpropertyInterpolate1("for", "drop-", i_r11, "");
190
- i0.ɵɵadvance(2);
191
- i0.ɵɵtextInterpolate(item_r10.icon);
192
- i0.ɵɵadvance(1);
193
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 7, item_r10.name), " ");
194
- i0.ɵɵadvance(4);
195
- i0.ɵɵtextInterpolate(item_r10.icon);
196
- i0.ɵɵadvance(1);
197
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(10, 9, item_r10.name), " ");
198
- i0.ɵɵadvance(2);
199
- i0.ɵɵpropertyInterpolate1("id", "drop-", i_r11, "");
200
- i0.ɵɵadvance(2);
201
- i0.ɵɵproperty("ngForOf", item_r10.sub);
202
- } }
203
- function HeaderTopComponent_ul_5_li_1_div_1_Template(rf, ctx) { if (rf & 1) {
204
- i0.ɵɵelementStart(0, "div", 26);
205
- i0.ɵɵtemplate(1, HeaderTopComponent_ul_5_li_1_div_1_a_1_Template, 5, 5, "a", 27);
206
- i0.ɵɵtemplate(2, HeaderTopComponent_ul_5_li_1_div_1_div_2_Template, 14, 11, "div", 28);
207
- i0.ɵɵelementEnd();
208
- } if (rf & 2) {
209
- const item_r10 = i0.ɵɵnextContext().$implicit;
210
- i0.ɵɵadvance(1);
211
- i0.ɵɵproperty("ngIf", item_r10.type === "link");
212
- i0.ɵɵadvance(1);
213
- i0.ɵɵproperty("ngIf", item_r10.type === "dropDown");
214
- } }
215
- function HeaderTopComponent_ul_5_li_1_Template(rf, ctx) { if (rf & 1) {
216
- i0.ɵɵelementStart(0, "li");
217
- i0.ɵɵtemplate(1, HeaderTopComponent_ul_5_li_1_div_1_Template, 3, 2, "div", 25);
218
- i0.ɵɵelementEnd();
219
- } if (rf & 2) {
220
- const item_r10 = ctx.$implicit;
221
- i0.ɵɵadvance(1);
222
- i0.ɵɵproperty("ngIf", item_r10.type !== "separator");
223
- } }
224
- function HeaderTopComponent_ul_5_Template(rf, ctx) { if (rf & 1) {
225
- i0.ɵɵelementStart(0, "ul", 23);
226
- i0.ɵɵtemplate(1, HeaderTopComponent_ul_5_li_1_Template, 2, 1, "li", 24);
227
- i0.ɵɵelementEnd();
228
- } if (rf & 2) {
229
- const ctx_r0 = i0.ɵɵnextContext();
230
- i0.ɵɵadvance(1);
231
- i0.ɵɵproperty("ngForOf", ctx_r0.menuItems);
232
- } }
233
- function HeaderTopComponent_mat_select_9_mat_option_1_Template(rf, ctx) { if (rf & 1) {
234
- i0.ɵɵelementStart(0, "mat-option", 39);
235
- i0.ɵɵtext(1);
236
- i0.ɵɵelementEnd();
237
- } if (rf & 2) {
238
- const lang_r40 = ctx.$implicit;
239
- i0.ɵɵproperty("value", lang_r40.code);
240
- i0.ɵɵadvance(1);
241
- i0.ɵɵtextInterpolate1("", lang_r40.name, " ");
242
- } }
243
- function HeaderTopComponent_mat_select_9_Template(rf, ctx) { if (rf & 1) {
244
- const _r42 = i0.ɵɵgetCurrentView();
245
- i0.ɵɵelementStart(0, "mat-select", 37);
246
- i0.ɵɵlistener("ngModelChange", function HeaderTopComponent_mat_select_9_Template_mat_select_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r41 = i0.ɵɵnextContext(); return ctx_r41.currentLang = $event; })("selectionChange", function HeaderTopComponent_mat_select_9_Template_mat_select_selectionChange_0_listener() { i0.ɵɵrestoreView(_r42); const ctx_r43 = i0.ɵɵnextContext(); return ctx_r43.setLang(); });
247
- i0.ɵɵtemplate(1, HeaderTopComponent_mat_select_9_mat_option_1_Template, 2, 2, "mat-option", 38);
248
- i0.ɵɵelementEnd();
249
- } if (rf & 2) {
250
- const ctx_r2 = i0.ɵɵnextContext();
251
- i0.ɵɵstyleProp("width", "auto");
252
- i0.ɵɵproperty("ngModel", ctx_r2.currentLang);
253
- i0.ɵɵadvance(1);
254
- i0.ɵɵproperty("ngForOf", ctx_r2.availableLangs);
255
- } }
256
- function HeaderTopComponent_mat_grid_tile_16_mat_icon_3_Template(rf, ctx) { if (rf & 1) {
257
- i0.ɵɵelementStart(0, "mat-icon", 44);
258
- i0.ɵɵtext(1, "check");
259
- i0.ɵɵelementEnd();
260
- } }
261
- function HeaderTopComponent_mat_grid_tile_16_Template(rf, ctx) { if (rf & 1) {
262
- const _r47 = i0.ɵɵgetCurrentView();
263
- i0.ɵɵelementStart(0, "mat-grid-tile", 40);
264
- i0.ɵɵlistener("click", function HeaderTopComponent_mat_grid_tile_16_Template_mat_grid_tile_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r47); const theme_r44 = restoredCtx.$implicit; const ctx_r46 = i0.ɵɵnextContext(); return ctx_r46.changeTheme(theme_r44); });
265
- i0.ɵɵelementStart(1, "div", 41);
266
- i0.ɵɵelement(2, "div", 42);
267
- i0.ɵɵtemplate(3, HeaderTopComponent_mat_grid_tile_16_mat_icon_3_Template, 2, 0, "mat-icon", 43);
268
- i0.ɵɵelementEnd();
269
- i0.ɵɵelementEnd();
270
- } if (rf & 2) {
271
- const theme_r44 = ctx.$implicit;
272
- i0.ɵɵadvance(1);
273
- i0.ɵɵproperty("title", theme_r44.name);
274
- i0.ɵɵadvance(1);
275
- i0.ɵɵstyleProp("background", theme_r44.baseColor);
276
- i0.ɵɵadvance(1);
277
- i0.ɵɵproperty("ngIf", theme_r44.isActive);
278
- } }
279
- function HeaderTopComponent_img_24_Template(rf, ctx) { if (rf & 1) {
280
- i0.ɵɵelement(0, "img", 45);
281
- i0.ɵɵpipe(1, "async");
282
- } if (rf & 2) {
283
- const ctx_r5 = i0.ɵɵnextContext();
284
- i0.ɵɵproperty("src", i0.ɵɵpipeBind1(1, 1, ctx_r5.authenticatedUserRecord$).profileImage, i0.ɵɵsanitizeUrl);
285
- } }
286
- function HeaderTopComponent_img_27_Template(rf, ctx) { if (rf & 1) {
287
- i0.ɵɵelement(0, "img", 46);
288
- } }
289
- function HeaderTopComponent_button_57_Template(rf, ctx) { if (rf & 1) {
290
- const _r49 = i0.ɵɵgetCurrentView();
291
- i0.ɵɵelementStart(0, "button", 47);
292
- i0.ɵɵlistener("click", function HeaderTopComponent_button_57_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r49); const ctx_r48 = i0.ɵɵnextContext(); return ctx_r48.toggleSidenav(); });
293
- i0.ɵɵelementStart(1, "mat-icon");
294
- i0.ɵɵtext(2, "menu");
295
- i0.ɵɵelementEnd();
296
- i0.ɵɵelementEnd();
297
- } }
298
- const _c0 = function () { return ["/profile/overview"]; };
299
- const _c1 = function () { return ["/profile/settings"]; };
300
- const _c2 = function () { return ["/sessions/signin"]; };
301
- export class HeaderTopComponent {
302
- constructor(layout, themeService, translate, renderer, store, cookieService) {
303
- this.layout = layout;
304
- this.themeService = themeService;
305
- this.translate = translate;
306
- this.renderer = renderer;
307
- this.store = store;
308
- this.cookieService = cookieService;
309
- this.egretThemes = [];
310
- this.currentLang = "en";
311
- this.availableLangs = [
312
- {
313
- name: "English",
314
- code: "en"
315
- },
316
- {
317
- name: "తెలుగు",
318
- code: "te"
319
- },
320
- {
321
- name: "한국어",
322
- code: "ko"
323
- }
324
- ];
325
- }
326
- ngOnInit() {
327
- this.themeModel$ = this.store.pipe(select(sharedModuleReducers.getThemeModel));
328
- this.layoutConf = this.layout.layoutConf;
329
- this.egretThemes = this.themeService.egretThemes;
330
- this.authenticatedUserRecord$ = this.store.pipe(select(sharedModuleReducers.getAuthenticatedUserModel));
331
- }
332
- ngOnDestroy() { }
333
- setLang() {
334
- this.translate.use(this.currentLang);
335
- let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);
336
- if (currentCulture === 'null' || currentCulture === 'undefined') {
337
- currentCulture = 'en';
338
- }
339
- this.currentLang = currentCulture;
340
- let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));
341
- this.cookieService.set(LocalStorageProperties.CurrentCulture, this.currentLang, null, environment.cookiePath, window.location.hostname, false, "Strict");
342
- }
343
- changeTheme(theme) {
344
- // this.themeService.changeTheme(this.renderer, theme);
345
- }
346
- toggleNotific() {
347
- this.notificPanel.toggle();
348
- }
349
- toggleSidenav() {
350
- if (this.layoutConf.sidebarStyle === "closed") {
351
- return this.layout.publishLayoutChange({
352
- sidebarStyle: "full"
353
- });
354
- }
355
- this.layout.publishLayoutChange({
356
- sidebarStyle: "closed"
357
- });
358
- }
359
- }
360
- HeaderTopComponent.ɵfac = function HeaderTopComponent_Factory(t) { return new (t || HeaderTopComponent)(i0.ɵɵdirectiveInject(i1.LayoutService), i0.ɵɵdirectiveInject(i2.ThemeService), i0.ɵɵdirectiveInject(i3.TranslateService), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i4.Store), i0.ɵɵdirectiveInject(i5.CookieService)); };
361
- HeaderTopComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HeaderTopComponent, selectors: [["app-header-top"]], inputs: { notificPanel: "notificPanel" }, decls: 58, vars: 30, consts: [[1, "header-topnav", "mat-elevation-z2"], [1, "container"], [1, "topnav"], [1, "topbar-branding"], ["src", "(themeModel$ | async).companyMiniLogo", "alt", "", 1, "app-logo"], ["class", "menu", 4, "ngIf"], ["fxFlex", ""], ["languageChange", "matMenu"], ["placeholder", "", "id", "langToggle", "name", "currentLang", "class", "topbar-button-right", 3, "width", "ngModel", "ngModelChange", "selectionChange", 4, "ngIf"], ["mat-icon-button", "", "id", "schemeToggle", "matTooltipClass", "tooltipClass-mat", "matTooltip", "Color Schemes", 1, "topbar-button-right", 3, "matMenuTriggerFor"], ["themeMenu", "matMenu"], ["cols", "2", "rowHeight", "48px", 1, "theme-list"], [3, "click", 4, "ngFor", "ngForOf"], ["mat-icon-button", "", "matTooltipClass", "tooltipClass-mat", 1, "topbar-button-right", 3, "matTooltip", "click"], [1, "notification-number", "mat-bg-warn"], ["mat-icon-button", "", 1, "topbar-button-right", "mr-1", "img-button", 3, "matMenuTriggerFor"], [3, "src", 4, "ngIf"], ["src", "../../../../assets/images/faces/18.png", 4, "ngIf"], ["accountMenu", "matMenu"], ["mat-menu-item", "", 3, "routerLink"], ["mat-menu-item", "", 3, "matMenuTriggerFor"], ["mat-menu-item", ""], ["mat-icon-button", "", "class", "mr-1", 3, "click", 4, "ngIf"], [1, "menu"], [4, "ngFor", "ngForOf"], ["routerLinkActive", "open", 4, "ngIf"], ["routerLinkActive", "open"], ["matRipple", "", 3, "routerLink", 4, "ngIf"], [4, "ngIf"], ["matRipple", "", 3, "routerLink"], ["matRipple", "", 1, "toggle", 3, "for"], ["matRipple", ""], ["type", "checkbox", 3, "id"], ["routerLinkActive", "open", 4, "ngFor", "ngForOf"], ["appDropdownToggle", "", "matRipple", "", 3, "routerLink", 4, "ngIf"], ["appDropdownToggle", "", "matRipple", "", 3, "routerLink"], [1, "item-name", "lvl2"], ["placeholder", "", "id", "langToggle", "name", "currentLang", 1, "topbar-button-right", 3, "ngModel", "ngModelChange", "selectionChange"], ["ngDefaultControl", "", 3, "value", 4, "ngFor", "ngForOf"], ["ngDefaultControl", "", 3, "value"], [3, "click"], ["mat-menu-item", "", 3, "title"], [1, "egret-swatch"], ["class", "active-icon", 4, "ngIf"], [1, "active-icon"], [3, "src"], ["src", "../../../../assets/images/faces/18.png"], ["mat-icon-button", "", 1, "mr-1", 3, "click"]], template: function HeaderTopComponent_Template(rf, ctx) { if (rf & 1) {
362
- i0.ɵɵelementStart(0, "div", 0);
363
- i0.ɵɵelementStart(1, "div", 1);
364
- i0.ɵɵelementStart(2, "div", 2);
365
- i0.ɵɵelementStart(3, "div", 3);
366
- i0.ɵɵelement(4, "img", 4);
367
- i0.ɵɵelementEnd();
368
- i0.ɵɵtemplate(5, HeaderTopComponent_ul_5_Template, 2, 1, "ul", 5);
369
- i0.ɵɵelement(6, "span", 6);
370
- i0.ɵɵelementStart(7, "mat-menu", null, 7);
371
- i0.ɵɵtemplate(9, HeaderTopComponent_mat_select_9_Template, 2, 4, "mat-select", 8);
372
- i0.ɵɵelementEnd();
373
- i0.ɵɵelementStart(10, "button", 9);
374
- i0.ɵɵelementStart(11, "mat-icon");
375
- i0.ɵɵtext(12, "format_color_fill");
376
- i0.ɵɵelementEnd();
377
- i0.ɵɵelementEnd();
378
- i0.ɵɵelementStart(13, "mat-menu", null, 10);
379
- i0.ɵɵelementStart(15, "mat-grid-list", 11);
380
- i0.ɵɵtemplate(16, HeaderTopComponent_mat_grid_tile_16_Template, 4, 4, "mat-grid-tile", 12);
381
- i0.ɵɵelementEnd();
382
- i0.ɵɵelementEnd();
383
- i0.ɵɵelementStart(17, "button", 13);
384
- i0.ɵɵlistener("click", function HeaderTopComponent_Template_button_click_17_listener() { return ctx.toggleNotific(); });
385
- i0.ɵɵpipe(18, "translate");
386
- i0.ɵɵelementStart(19, "mat-icon");
387
- i0.ɵɵtext(20, "notifications");
388
- i0.ɵɵelementEnd();
389
- i0.ɵɵelementStart(21, "span", 14);
390
- i0.ɵɵtext(22, "3");
391
- i0.ɵɵelementEnd();
392
- i0.ɵɵelementEnd();
393
- i0.ɵɵelementStart(23, "button", 15);
394
- i0.ɵɵtemplate(24, HeaderTopComponent_img_24_Template, 2, 3, "img", 16);
395
- i0.ɵɵpipe(25, "async");
396
- i0.ɵɵpipe(26, "async");
397
- i0.ɵɵtemplate(27, HeaderTopComponent_img_27_Template, 1, 0, "img", 17);
398
- i0.ɵɵpipe(28, "async");
399
- i0.ɵɵpipe(29, "async");
400
- i0.ɵɵelementEnd();
401
- i0.ɵɵelementStart(30, "mat-menu", null, 18);
402
- i0.ɵɵelementStart(32, "button", 19);
403
- i0.ɵɵelementStart(33, "mat-icon");
404
- i0.ɵɵtext(34, "account_box");
405
- i0.ɵɵelementEnd();
406
- i0.ɵɵelementStart(35, "span");
407
- i0.ɵɵtext(36, "Profile");
408
- i0.ɵɵelementEnd();
409
- i0.ɵɵelementEnd();
410
- i0.ɵɵelementStart(37, "button", 20);
411
- i0.ɵɵelementStart(38, "mat-icon");
412
- i0.ɵɵtext(39, "language");
413
- i0.ɵɵelementEnd();
414
- i0.ɵɵelementStart(40, "span");
415
- i0.ɵɵtext(41, "Language");
416
- i0.ɵɵelementEnd();
417
- i0.ɵɵelementEnd();
418
- i0.ɵɵelementStart(42, "button", 19);
419
- i0.ɵɵelementStart(43, "mat-icon");
420
- i0.ɵɵtext(44, "settings");
421
- i0.ɵɵelementEnd();
422
- i0.ɵɵelementStart(45, "span");
423
- i0.ɵɵtext(46, "Account Settings");
424
- i0.ɵɵelementEnd();
425
- i0.ɵɵelementEnd();
426
- i0.ɵɵelementStart(47, "button", 21);
427
- i0.ɵɵelementStart(48, "mat-icon");
428
- i0.ɵɵtext(49, "notifications_off");
429
- i0.ɵɵelementEnd();
430
- i0.ɵɵelementStart(50, "span");
431
- i0.ɵɵtext(51, "Disable alerts");
432
- i0.ɵɵelementEnd();
433
- i0.ɵɵelementEnd();
434
- i0.ɵɵelementStart(52, "button", 19);
435
- i0.ɵɵelementStart(53, "mat-icon");
436
- i0.ɵɵtext(54, "exit_to_app");
437
- i0.ɵɵelementEnd();
438
- i0.ɵɵelementStart(55, "span");
439
- i0.ɵɵtext(56, "Sign out");
440
- i0.ɵɵelementEnd();
441
- i0.ɵɵelementEnd();
442
- i0.ɵɵelementEnd();
443
- i0.ɵɵtemplate(57, HeaderTopComponent_button_57_Template, 3, 0, "button", 22);
444
- i0.ɵɵelementEnd();
445
- i0.ɵɵelementEnd();
446
- i0.ɵɵelementEnd();
447
- } if (rf & 2) {
448
- const _r1 = i0.ɵɵreference(8);
449
- const _r3 = i0.ɵɵreference(14);
450
- const _r7 = i0.ɵɵreference(31);
451
- i0.ɵɵadvance(5);
452
- i0.ɵɵproperty("ngIf", !ctx.layoutConf.isMobile);
453
- i0.ɵɵadvance(4);
454
- i0.ɵɵproperty("ngIf", !ctx.layoutConf.isMobile);
455
- i0.ɵɵadvance(1);
456
- i0.ɵɵstyleProp("overflow", "visible");
457
- i0.ɵɵproperty("matMenuTriggerFor", _r3);
458
- i0.ɵɵadvance(6);
459
- i0.ɵɵproperty("ngForOf", ctx.egretThemes);
460
- i0.ɵɵadvance(1);
461
- i0.ɵɵstyleProp("overflow", "visible");
462
- i0.ɵɵpropertyInterpolate("matTooltip", i0.ɵɵpipeBind1(18, 17, "SHELL.NOTIFICATIONS"));
463
- i0.ɵɵadvance(6);
464
- i0.ɵɵproperty("matMenuTriggerFor", _r7);
465
- i0.ɵɵadvance(1);
466
- i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(25, 19, ctx.authenticatedUserRecord$) && i0.ɵɵpipeBind1(26, 21, ctx.authenticatedUserRecord$).profileImage != null);
467
- i0.ɵɵadvance(3);
468
- i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(28, 23, ctx.authenticatedUserRecord$) == null || i0.ɵɵpipeBind1(29, 25, ctx.authenticatedUserRecord$).profileImage == null);
469
- i0.ɵɵadvance(5);
470
- i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction0(27, _c0));
471
- i0.ɵɵadvance(5);
472
- i0.ɵɵproperty("matMenuTriggerFor", _r1);
473
- i0.ɵɵadvance(5);
474
- i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction0(28, _c1));
475
- i0.ɵɵadvance(10);
476
- i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction0(29, _c2));
477
- i0.ɵɵadvance(5);
478
- i0.ɵɵproperty("ngIf", ctx.layoutConf.isMobile);
479
- } }, directives: [i6.NgIf, i7.DefaultFlexDirective, i8.MatMenu, i9.MatButton, i10.MatTooltip, i8.MatMenuTrigger, i11.MatIcon, i12.MatGridList, i6.NgForOf, i8.MatMenuItem, i13.RouterLink, i13.RouterLinkActive, i13.RouterLinkWithHref, i14.MatSelect, i15.NgControlStatus, i15.NgModel, i16.MatOption, i15.DefaultValueAccessor, i12.MatGridTile], pipes: [i3.TranslatePipe, i6.AsyncPipe], encapsulation: 2 });
480
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HeaderTopComponent, [{
481
- type: Component,
482
- args: [{
483
- selector: "app-header-top",
484
- templateUrl: "./header-top.component.html",
485
- }]
486
- }], function () { return [{ type: i1.LayoutService }, { type: i2.ThemeService }, { type: i3.TranslateService }, { type: i0.Renderer2 }, { type: i4.Store }, { type: i5.CookieService }]; }, { notificPanel: [{
487
- type: Input
488
- }] }); })();
489
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXRvcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zaGVsbC1tb2R1bGUtY29tcG9uZW50cy9zaGVsbC1jb21wb25lbnRzL3NyYy9saWIvc2hlbGwtY29tcG9uZW50cy9jb21wb25lbnRzL2hlYWRlci10b3AvaGVhZGVyLXRvcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zaGVsbC1tb2R1bGUtY29tcG9uZW50cy9zaGVsbC1jb21wb25lbnRzL3NyYy9saWIvc2hlbGwtY29tcG9uZW50cy9jb21wb25lbnRzL2hlYWRlci10b3AvaGVhZGVyLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBaUQsTUFBTSxlQUFlLENBQUM7QUFFeEcsT0FBTyxFQUFTLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEtBQUssb0JBQW9CLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsT0FBTyx1REFBdUQsQ0FBQztBQU0vRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ0QzRiw2QkFBdUU7SUFDckUsZ0NBQVU7SUFBQSxZQUFhO0lBQUEsaUJBQVc7SUFDbEMsWUFDRjs7SUFBQSxpQkFBSTs7O0lBSFMsZ0VBQTRCO0lBQzdCLGVBQWE7SUFBYixtQ0FBYTtJQUN2QixlQUNGO0lBREUsb0VBQ0Y7OztJQVlNLDZCQUN3RDtJQUN0RCxnQ0FBNkI7SUFBQSxZQUc3Qjs7SUFBQSxpQkFBTztJQUNQLDBCQUFvQjtJQUN0QixpQkFBSTs7O0lBUEQsMEZBQTBEO0lBRTlCLGVBRzdCO0lBSDZCLHVFQUc3Qjs7O0lBTUEsZ0NBQWdDO0lBQUEsWUFBaUI7SUFBQSxpQkFBVzs7O0lBQTVCLGVBQWlCO0lBQWpCLHVDQUFpQjs7O0lBRm5ELDZC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aUJBQU87UUFDN0IsaUJBQVM7UUFDVCxtQ0FBMEQ7UUFDeEQsaUNBQVU7UUFBQSw0QkFBVztRQUFBLGlCQUFXO1FBQ2hDLDZCQUFNO1FBQUEseUJBQVE7UUFBQSxpQkFBTztRQUN2QixpQkFBUztRQUNYLGlCQUFXO1FBRVgsNEVBRVM7UUFDWCxpQkFBTTtRQUNSLGlCQUFNO1FBQ1IsaUJBQU07Ozs7O1FBL0hrQixlQUEwQjtRQUExQiwrQ0FBMEI7UUErRDdCLGVBQTBCO1FBQTFCLCtDQUEwQjtRQU9DLGVBQTRCO1FBQTVCLHFDQUE0QjtRQUNwRSx1Q0FBK0I7UUFLSSxlQUFjO1FBQWQseUNBQWM7UUFXakQsZUFBNEI7UUFBNUIscUNBQTRCO1FBRE4scUZBQW1EO1FBTW5ELGVBQWlDO1FBQWpDLHVDQUFpQztRQUNqRCxlQUFtRztRQUFuRyx3SkFBbUc7UUFHdEcsZUFBMkc7UUFBM0csZ0tBQTJHO1FBSXhGLGVBQW9DO1FBQXBDLHdEQUFvQztRQUlwQyxlQUFvQztRQUFwQyx1Q0FBb0M7UUFJcEMsZUFBb0M7UUFBcEMsd0RBQW9DO1FBUXBDLGdCQUFtQztRQUFuQyx3REFBbUM7UUFNSyxlQUF5QjtRQUF6Qiw4Q0FBeUI7O3VGRC9HbEYsa0JBQWtCO2NBTDlCLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixXQUFXLEVBQUUsNkJBQTZCO2FBQzNDO2tNQXNCVSxZQUFZO2tCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBTdG9yZSwgc2VsZWN0IH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5pbXBvcnQgeyBTdGF0ZSB9IGZyb20gXCIuLi8uLi9zdG9yZS9yZWR1Y2Vycy9pbmRleFwiO1xuaW1wb3J0ICogYXMgc2hhcmVkTW9kdWxlUmVkdWNlcnMgZnJvbSBcIi4uLy4uL3N0b3JlL3JlZHVjZXJzL2luZGV4XCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCAnLi4vLi4vLi4vZ2xvYmFsZGVwZW5kZW5jaWVzL2hlbHBlcnMvZm9udGF3ZXNvbWUtaWNvbnMnO1xuaW1wb3J0IHsgVGhlbWVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy90aGVtZXMubW9kZWwnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3VzZXInO1xuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhbFN0b3JhZ2VQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vLi4vLi4vZ2xvYmFsZGVwZW5kZW5jaWVzL2NvbnN0YW50cy9sb2NhbHN0b3JhZ2UtcHJvcGVydGllcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcHAtaGVhZGVyLXRvcFwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2hlYWRlci10b3AuY29tcG9uZW50Lmh0bWxcIixcbn0pXG5cbmV4cG9ydCBjbGFzcyBIZWFkZXJUb3BDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHRoZW1lTW9kZWwkOiBPYnNlcnZhYmxlPFRoZW1lTW9kZWw+O1xuICBsYXlvdXRDb25mOiBhbnk7XG4gIG1lbnVJdGVtczogYW55O1xuICBlZ3JldFRoZW1lczogYW55W10gPSBbXTtcbiAgY3VycmVudExhbmcgPSBcImVuXCI7XG4gIGF2YWlsYWJsZUxhbmdzID0gW1xuICAgIHtcbiAgICAgIG5hbWU6IFwiRW5nbGlzaFwiLFxuICAgICAgY29kZTogXCJlblwiXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiBcIuCwpOCxhuCwsuCxgeCwl+CxgVwiLFxuICAgICAgY29kZTogXCJ0ZVwiXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiBcIu2VnOq1reyWtFwiLFxuICAgICAgY29kZTogXCJrb1wiXG4gICAgfVxuICBdO1xuICBASW5wdXQoKSBub3RpZmljUGFuZWw7XG4gIGF1dGhlbnRpY2F0ZWRVc2VyUmVjb3JkJDogT2JzZXJ2YWJsZTxVc2VyTW9kZWw+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbGF5b3V0OiBMYXlvdXRTZXJ2aWNlLFxuICAgIHB1YmxpYyB0aGVtZVNlcnZpY2U6IFRoZW1lU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxTdGF0ZT4sXG4gICAgcHVibGljIGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2UsXG4gICAgXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50aGVtZU1vZGVsJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3Qoc2hhcmVkTW9kdWxlUmVkdWNlcnMuZ2V0VGhlbWVNb2RlbCkpO1xuICAgIHRoaXMubGF5b3V0Q29uZiA9IHRoaXMubGF5b3V0LmxheW91dENvbmY7XG4gICAgdGhpcy5lZ3JldFRoZW1lcyA9IHRoaXMudGhlbWVTZXJ2aWNlLmVncmV0VGhlbWVzO1xuICAgIHRoaXMuYXV0aGVudGljYXRlZFVzZXJSZWNvcmQkID0gdGhpcy5zdG9yZS5waXBlKFxuICAgICAgc2VsZWN0KHNoYXJlZE1vZHVsZVJlZHVjZXJzLmdldEF1dGhlbnRpY2F0ZWRVc2VyTW9kZWwpXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkgeyB9XG5cbiAgc2V0TGFuZygpIHtcblxuICAgIHRoaXMudHJhbnNsYXRlLnVzZSh0aGlzLmN1cnJlbnRMYW5nKTtcbiAgICBsZXQgY3VycmVudEN1bHR1cmUgPSB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KExvY2FsU3RvcmFnZVByb3BlcnRpZXMuQ3VycmVudEN1bHR1cmUpO1xuXG4gICAgaWYgKGN1cnJlbnRDdWx0dXJlID09PSAnbnVsbCcgfHwgY3VycmVudEN1bHR1cmUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGN1cnJlbnRDdWx0dXJlID0gJ2VuJztcbiAgICB9XG4gICAgdGhpcy5jdXJyZW50TGFuZyA9IGN1cnJlbnRDdWx0dXJlO1xuICAgIGxldCBlbnZpcm9ubWVudCA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oTG9jYWxTdG9yYWdlUHJvcGVydGllcy5FbnZpcm9ubWVudCkpO1xuICAgIHRoaXMuY29va2llU2VydmljZS5zZXQoTG9jYWxTdG9yYWdlUHJvcGVydGllcy5DdXJyZW50Q3VsdHVyZSwgdGhpcy5jdXJyZW50TGFuZywgbnVsbCwgZW52aXJvbm1lbnQuY29va2llUGF0aCwgd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLCBmYWxzZSwgXCJTdHJpY3RcIik7XG4gIH1cblxuICBjaGFuZ2VUaGVtZSh0aGVtZSkge1xuICAgIC8vIHRoaXMudGhlbWVTZXJ2aWNlLmNoYW5nZVRoZW1lKHRoaXMucmVuZGVyZXIsIHRoZW1lKTtcbiAgfVxuICB0b2dnbGVOb3RpZmljKCkge1xuICAgIHRoaXMubm90aWZpY1BhbmVsLnRvZ2dsZSgpO1xuICB9XG4gIHRvZ2dsZVNpZGVuYXYoKSB7XG4gICAgaWYgKHRoaXMubGF5b3V0Q29uZi5zaWRlYmFyU3R5bGUgPT09IFwiY2xvc2VkXCIpIHtcbiAgICAgIHJldHVybiB0aGlzLmxheW91dC5wdWJsaXNoTGF5b3V0Q2hhbmdlKHtcbiAgICAgICAgc2lkZWJhclN0eWxlOiBcImZ1bGxcIlxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMubGF5b3V0LnB1Ymxpc2hMYXlvdXRDaGFuZ2Uoe1xuICAgICAgc2lkZWJhclN0eWxlOiBcImNsb3NlZFwiXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoZWFkZXItdG9wbmF2IG1hdC1lbGV2YXRpb24tejJcIj5cbiAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0b3BuYXZcIj5cbiAgICAgIDwhLS0gQXBwIExvZ28gLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwidG9wYmFyLWJyYW5kaW5nXCI+XG4gICAgICAgIDxpbWcgc3JjPVwiKHRoZW1lTW9kZWwkICB8IGFzeW5jKS5jb21wYW55TWluaUxvZ29cIiBhbHQ9XCJcIiBjbGFzcz1cImFwcC1sb2dvXCI+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPHVsIGNsYXNzPVwibWVudVwiICpuZ0lmPVwiIWxheW91dENvbmYuaXNNb2JpbGVcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1lbnVJdGVtczsgbGV0IGkgPSBpbmRleDtcIj5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS50eXBlICE9PSAnc2VwYXJhdG9yJ1wiIHJvdXRlckxpbmtBY3RpdmU9XCJvcGVuXCI+XG4gICAgICAgICAgICA8YSBtYXRSaXBwbGUgcm91dGVyTGluaz1cIi97e2l0ZW0uc3RhdGV9fVwiICpuZ0lmPVwiaXRlbS50eXBlID09PSAnbGluaydcIj5cbiAgICAgICAgICAgICAgPG1hdC1pY29uPnt7aXRlbS5pY29ufX08L21hdC1pY29uPlxuICAgICAgICAgICAgICB7e2l0ZW0ubmFtZSB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS50eXBlID09PSAnZHJvcERvd24nXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBtYXRSaXBwbGUgZm9yPVwiZHJvcC17e2l9fVwiIGNsYXNzPVwidG9nZ2xlXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPnt7aXRlbS5pY29ufX08L21hdC1pY29uPiB7e2l0ZW0ubmFtZSB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgIDxhIG1hdFJpcHBsZT5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+e3tpdGVtLmljb259fTwvbWF0LWljb24+IHt7aXRlbS5uYW1lIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJkcm9wLXt7aX19XCIgLz5cbiAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbUx2TDIgb2YgaXRlbS5zdWI7IGxldCBqID0gaW5kZXg7XCIgcm91dGVyTGlua0FjdGl2ZT1cIm9wZW5cIj5cblxuICAgICAgICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cInt7IGl0ZW1MdkwyLnN0YXRlID8gJy8nK2l0ZW1MdkwyLnN0YXRlIDogJyd9fVwiIGFwcERyb3Bkb3duVG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbUx2TDIudHlwZSA9PT0gJ2FwcGxpY2F0aW9ubGluaydcIiBtYXRSaXBwbGU+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXRlbS1uYW1lIGx2bDJcIj57e1xuICAgICAgICAgICAgICAgICAgaXRlbUx2TDIubmFtZSB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gZnhGbGV4Pjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgICAgICAgPGEgbWF0UmlwcGxlIHJvdXRlckxpbms9XCJ7e2l0ZW0uc3RhdGUgPyAnLycraXRlbS5zdGF0ZSA6ICcnfX0ve3tpdGVtTHZMMi5zdGF0ZX19XCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtTHZMMi50eXBlICE9PSAnZHJvcERvd24nICYmIGl0ZW1MdkwyLnR5cGUgIT09ICdhcHBsaWNhdGlvbmxpbmsnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIml0ZW1MdkwyLmljb25cIj57e2l0ZW1MdkwyLmljb259fTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgIHt7aXRlbUx2TDIubmFtZSB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgICA8L2E+XG5cblxuXG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbUx2TDIudHlwZSA9PT0gJ2Ryb3BEb3duJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgbWF0UmlwcGxlIGZvcj1cImRyb3Ate3tpfX17e2p9fVwiIGNsYXNzPVwidG9nZ2xlXCI+e3tpdGVtTHZMMi5uYW1lIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8YSBtYXRSaXBwbGU+XG4gICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaXRlbUx2TDIuaWNvblwiPnt7aXRlbUx2TDIuaWNvbn19PC9tYXQtaWNvbj4ge3tpdGVtTHZMMi5uYW1lIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJkcm9wLXt7aX19e3tqfX1cIiAvPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIExldmVsIDMgLS0+XG4gICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW1MdkwzIG9mIGl0ZW1MdkwyLnN1YlwiIHJvdXRlckxpbmtBY3RpdmU9XCJvcGVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBtYXRSaXBwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cInt7aXRlbS5zdGF0ZSA/ICcvJytpdGVtLnN0YXRlIDogJyd9fXt7aXRlbUx2TDIuc3RhdGUgPyAnLycraXRlbUx2TDIuc3RhdGUgOiAnJ319L3t7aXRlbUx2TDMuc3RhdGV9fVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpdGVtTHZMMy5pY29uXCI+e3tpdGVtTHZMMy5pY29ufX08L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7e2l0ZW1MdkwzLm5hbWUgfCB0cmFuc2xhdGV9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPHNwYW4gZnhGbGV4Pjwvc3Bhbj5cbiAgICAgIDwhLS0gRW5kIE5hdmlnYXRpb24gLS0+XG5cbiAgICAgIDwhLS0gTGFuZ3VhZ2UgU3dpdGNoZXIgLS0+XG4gICAgICA8bWF0LW1lbnUgI2xhbmd1YWdlQ2hhbmdlPVwibWF0TWVudVwiPlxuICAgICAgICA8bWF0LXNlbGVjdCAqbmdJZj1cIiFsYXlvdXRDb25mLmlzTW9iaWxlXCIgcGxhY2Vob2xkZXI9XCJcIiBpZD1cImxhbmdUb2dnbGVcIiBbc3R5bGUud2lkdGhdPVwiJ2F1dG8nXCJcbiAgICAgICAgICBuYW1lPVwiY3VycmVudExhbmdcIiBbKG5nTW9kZWwpXT1cImN1cnJlbnRMYW5nXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJzZXRMYW5nKClcIiBjbGFzcz1cInRvcGJhci1idXR0b24tcmlnaHRcIj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgbGFuZyBvZiBhdmFpbGFibGVMYW5nc1wiIFt2YWx1ZV09XCJsYW5nLmNvZGVcIiBuZ0RlZmF1bHRDb250cm9sPnt7IGxhbmcubmFtZSB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtbWVudT5cbiAgICAgIDwhLS0gVGhlbWUgU3dpdGNoZXIgLS0+XG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBpZD1cInNjaGVtZVRvZ2dsZVwiIFtzdHlsZS5vdmVyZmxvd109XCIndmlzaWJsZSdcIiBtYXRUb29sdGlwQ2xhc3M9XCJ0b29sdGlwQ2xhc3MtbWF0XCIgbWF0VG9vbHRpcD1cIkNvbG9yIFNjaGVtZXNcIlxuICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwidGhlbWVNZW51XCIgY2xhc3M9XCJ0b3BiYXItYnV0dG9uLXJpZ2h0XCI+XG4gICAgICAgIDxtYXQtaWNvbj5mb3JtYXRfY29sb3JfZmlsbDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxtYXQtbWVudSAjdGhlbWVNZW51PVwibWF0TWVudVwiPlxuICAgICAgICA8bWF0LWdyaWQtbGlzdCBjbGFzcz1cInRoZW1lLWxpc3RcIiBjb2xzPVwiMlwiIHJvd0hlaWdodD1cIjQ4cHhcIj5cbiAgICAgICAgICA8bWF0LWdyaWQtdGlsZSAqbmdGb3I9XCJsZXQgdGhlbWUgb2YgZWdyZXRUaGVtZXNcIiAoY2xpY2spPVwiY2hhbmdlVGhlbWUodGhlbWUpXCI+XG4gICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gW3RpdGxlXT1cInRoZW1lLm5hbWVcIj5cbiAgICAgICAgICAgICAgPGRpdiBbc3R5bGUuYmFja2dyb3VuZF09XCJ0aGVtZS5iYXNlQ29sb3JcIiBjbGFzcz1cImVncmV0LXN3YXRjaFwiPjwvZGl2PlxuICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhY3RpdmUtaWNvblwiICpuZ0lmPVwidGhlbWUuaXNBY3RpdmVcIj5jaGVjazwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgIDwvbWF0LWdyaWQtbGlzdD5cbiAgICAgIDwvbWF0LW1lbnU+XG5cbiAgICAgIDwhLS0gTm90aWZpY2F0aW9uIHRvZ2dsZSBidXR0b24gLS0+XG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBtYXRUb29sdGlwPVwie3sgJ1NIRUxMLk5PVElGSUNBVElPTlMnIHwgdHJhbnNsYXRlfX1cIiBtYXRUb29sdGlwQ2xhc3M9XCJ0b29sdGlwQ2xhc3MtbWF0XCIgKGNsaWNrKT1cInRvZ2dsZU5vdGlmaWMoKVwiXG4gICAgICAgIFtzdHlsZS5vdmVyZmxvd109XCIndmlzaWJsZSdcIiBjbGFzcz1cInRvcGJhci1idXR0b24tcmlnaHRcIj5cbiAgICAgICAgPG1hdC1pY29uPm5vdGlmaWNhdGlvbnM8L21hdC1pY29uPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1udW1iZXIgbWF0LWJnLXdhcm5cIj4zPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8IS0tIFRvcCBsZWZ0IHVzZXIgbWVudSAtLT5cbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJhY2NvdW50TWVudVwiIGNsYXNzPVwidG9wYmFyLWJ1dHRvbi1yaWdodCBtci0xIGltZy1idXR0b25cIj5cbiAgICAgICAgPGltZyAqbmdJZj1cIihhdXRoZW50aWNhdGVkVXNlclJlY29yZCQgfCBhc3luYykgJiYgKGF1dGhlbnRpY2F0ZWRVc2VyUmVjb3JkJCB8IGFzeW5jKS5wcm9maWxlSW1hZ2UgIT0gbnVsbFwiXG4gICAgICAgICAgW3NyY109XCIoYXV0aGVudGljYXRlZFVzZXJSZWNvcmQkIHwgYXN5bmMpLnByb2ZpbGVJbWFnZVwiPlxuICAgICAgICA8aW1nXG4gICAgICAgICAgKm5nSWY9XCIoYXV0aGVudGljYXRlZFVzZXJSZWNvcmQkIHwgYXN5bmMpID09IG51bGwgfHwgKGF1dGhlbnRpY2F0ZWRVc2VyUmVjb3JkJCB8IGFzeW5jKS5wcm9maWxlSW1hZ2UgPT0gbnVsbFwiXG4gICAgICAgICAgc3JjPVwiLi4vLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9mYWNlcy8xOC5wbmdcIj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPG1hdC1tZW51ICNhY2NvdW50TWVudT1cIm1hdE1lbnVcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIFtyb3V0ZXJMaW5rXT1cIlsnL3Byb2ZpbGUvb3ZlcnZpZXcnXVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5hY2NvdW50X2JveDwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+UHJvZmlsZTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSBbbWF0TWVudVRyaWdnZXJGb3JdPVwibGFuZ3VhZ2VDaGFuZ2VcIj5cbiAgICAgICAgICA8bWF0LWljb24+bGFuZ3VhZ2U8L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPkxhbmd1YWdlPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIFtyb3V0ZXJMaW5rXT1cIlsnL3Byb2ZpbGUvc2V0dGluZ3MnXVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5zZXR0aW5nczwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+QWNjb3VudCBTZXR0aW5nczwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbT5cbiAgICAgICAgICA8bWF0LWljb24+bm90aWZpY2F0aW9uc19vZmY8L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPkRpc2FibGUgYWxlcnRzPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIFtyb3V0ZXJMaW5rXT1cIlsnL3Nlc3Npb25zL3NpZ25pbiddXCI+XG4gICAgICAgICAgPG1hdC1pY29uPmV4aXRfdG9fYXBwPC9tYXQtaWNvbj5cbiAgICAgICAgICA8c3Bhbj5TaWduIG91dDwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L21hdC1tZW51PlxuICAgICAgPCEtLSBNb2JpbGUgc2NyZWVuIG1lbnUgdG9nZ2xlIC0tPlxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJtci0xXCIgKGNsaWNrKT1cInRvZ2dsZVNpZGVuYXYoKVwiICpuZ0lmPVwibGF5b3V0Q29uZi5pc01vYmlsZVwiPlxuICAgICAgICA8bWF0LWljb24+bWVudTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
1
+ import { Component, Input } from "@angular/core";
2
+ import { select } from "@ngrx/store";
3
+ import * as sharedModuleReducers from "../../store/reducers/index";
4
+ import '../../../globaldependencies/helpers/fontawesome-icons';
5
+ import { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../services/layout.service";
8
+ import * as i2 from "../../services/theme.service";
9
+ import * as i3 from "@ngx-translate/core";
10
+ import * as i4 from "@ngrx/store";
11
+ import * as i5 from "ngx-cookie-service";
12
+ import * as i6 from "@angular/material/icon";
13
+ import * as i7 from "@angular/material/menu";
14
+ import * as i8 from "@angular/material/select";
15
+ import * as i9 from "@angular/material/core";
16
+ import * as i10 from "@angular/material/button";
17
+ import * as i11 from "@angular/material/grid-list";
18
+ import * as i12 from "@angular/common";
19
+ import * as i13 from "@angular/router";
20
+ import * as i14 from "@angular/flex-layout/flex";
21
+ import * as i15 from "@angular/forms";
22
+ import * as i16 from "@angular/material/tooltip";
23
+ export class HeaderTopComponent {
24
+ constructor(layout, themeService, translate, renderer, store, cookieService) {
25
+ this.layout = layout;
26
+ this.themeService = themeService;
27
+ this.translate = translate;
28
+ this.renderer = renderer;
29
+ this.store = store;
30
+ this.cookieService = cookieService;
31
+ this.egretThemes = [];
32
+ this.currentLang = "en";
33
+ this.availableLangs = [
34
+ {
35
+ name: "English",
36
+ code: "en"
37
+ },
38
+ {
39
+ name: "తెలుగు",
40
+ code: "te"
41
+ },
42
+ {
43
+ name: "한국어",
44
+ code: "ko"
45
+ }
46
+ ];
47
+ }
48
+ ngOnInit() {
49
+ this.themeModel$ = this.store.pipe(select(sharedModuleReducers.getThemeModel));
50
+ this.layoutConf = this.layout.layoutConf;
51
+ this.egretThemes = this.themeService.egretThemes;
52
+ this.authenticatedUserRecord$ = this.store.pipe(select(sharedModuleReducers.getAuthenticatedUserModel));
53
+ }
54
+ ngOnDestroy() { }
55
+ setLang() {
56
+ this.translate.use(this.currentLang);
57
+ let currentCulture = this.cookieService.get(LocalStorageProperties.CurrentCulture);
58
+ if (currentCulture === 'null' || currentCulture === 'undefined') {
59
+ currentCulture = 'en';
60
+ }
61
+ this.currentLang = currentCulture;
62
+ let environment = JSON.parse(localStorage.getItem(LocalStorageProperties.Environment));
63
+ this.cookieService.set(LocalStorageProperties.CurrentCulture, this.currentLang, null, environment.cookiePath, window.location.hostname, false, "Strict");
64
+ }
65
+ changeTheme(theme) {
66
+ // this.themeService.changeTheme(this.renderer, theme);
67
+ }
68
+ toggleNotific() {
69
+ this.notificPanel.toggle();
70
+ }
71
+ toggleSidenav() {
72
+ if (this.layoutConf.sidebarStyle === "closed") {
73
+ return this.layout.publishLayoutChange({
74
+ sidebarStyle: "full"
75
+ });
76
+ }
77
+ this.layout.publishLayoutChange({
78
+ sidebarStyle: "closed"
79
+ });
80
+ }
81
+ }
82
+ HeaderTopComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: HeaderTopComponent, deps: [{ token: i1.LayoutService }, { token: i2.ThemeService }, { token: i3.TranslateService }, { token: i0.Renderer2 }, { token: i4.Store }, { token: i5.CookieService }], target: i0.ɵɵFactoryTarget.Component });
83
+ HeaderTopComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.1", type: HeaderTopComponent, selector: "app-header-top", inputs: { notificPanel: "notificPanel" }, ngImport: i0, template: "<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>", components: [{ type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i10.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i11.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i11.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }, { type: i7.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: i13.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i14.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i15.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i15.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i15.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i16.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { type: i13.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["routerLink", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }], pipes: { "translate": i3.TranslatePipe, "async": i12.AsyncPipe } });
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: HeaderTopComponent, decorators: [{
85
+ type: Component,
86
+ args: [{
87
+ selector: "app-header-top",
88
+ templateUrl: "./header-top.component.html",
89
+ }]
90
+ }], ctorParameters: function () { return [{ type: i1.LayoutService }, { type: i2.ThemeService }, { type: i3.TranslateService }, { type: i0.Renderer2 }, { type: i4.Store }, { type: i5.CookieService }]; }, propDecorators: { notificPanel: [{
91
+ type: Input
92
+ }] } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXRvcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zaGVsbC1tb2R1bGUtY29tcG9uZW50cy9zaGVsbC1jb21wb25lbnRzL3NyYy9saWIvc2hlbGwtY29tcG9uZW50cy9jb21wb25lbnRzL2hlYWRlci10b3AvaGVhZGVyLXRvcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zaGVsbC1tb2R1bGUtY29tcG9uZW50cy9zaGVsbC1jb21wb25lbnRzL3NyYy9saWIvc2hlbGwtY29tcG9uZW50cy9jb21wb25lbnRzL2hlYWRlci10b3AvaGVhZGVyLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBaUQsTUFBTSxlQUFlLENBQUM7QUFFeEcsT0FBTyxFQUFTLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEtBQUssb0JBQW9CLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsT0FBTyx1REFBdUQsQ0FBQztBQU0vRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT3ZHLE1BQU0sT0FBTyxrQkFBa0I7SUF1QjdCLFlBQ1UsTUFBcUIsRUFDdEIsWUFBMEIsRUFDMUIsU0FBMkIsRUFDMUIsUUFBbUIsRUFDbkIsS0FBbUIsRUFDcEIsYUFBNEI7UUFMM0IsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMxQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQWM7UUFDcEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUF6QnJDLGdCQUFXLEdBQVUsRUFBRSxDQUFDO1FBQ3hCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ25CLG1CQUFjLEdBQUc7WUFDZjtnQkFDRSxJQUFJLEVBQUUsU0FBUztnQkFDZixJQUFJLEVBQUUsSUFBSTthQUNYO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsSUFBSSxFQUFFLElBQUk7YUFDWDtZQUNEO2dCQUNFLElBQUksRUFBRSxLQUFLO2dCQUNYLElBQUksRUFBRSxJQUFJO2FBQ1g7U0FDRixDQUFDO0lBWUUsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDekMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQztRQUNqRCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQzdDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUN2RCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsS0FBSyxDQUFDO0lBRWpCLE9BQU87UUFFTCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDckMsSUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFbkYsSUFBSSxjQUFjLEtBQUssTUFBTSxJQUFJLGNBQWMsS0FBSyxXQUFXLEVBQUU7WUFDN0QsY0FBYyxHQUFHLElBQUksQ0FBQztTQUN6QjtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDO1FBQ2xDLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzSixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQUs7UUFDZix1REFBdUQ7SUFDekQsQ0FBQztJQUNELGFBQWE7UUFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFDRCxhQUFhO1FBQ1gsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksS0FBSyxRQUFRLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDO2dCQUNyQyxZQUFZLEVBQUUsTUFBTTthQUNyQixDQUFDLENBQUM7U0FDSjtRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUM7WUFDOUIsWUFBWSxFQUFFLFFBQVE7U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7K0dBeEVVLGtCQUFrQjttR0FBbEIsa0JBQWtCLGdHQ25CL0IscXJOQXVJTTsyRkRwSE8sa0JBQWtCO2tCQUw5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFdBQVcsRUFBRSw2QkFBNkI7aUJBQzNDO3NPQXNCVSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHsgU3RvcmUsIHNlbGVjdCB9IGZyb20gXCJAbmdyeC9zdG9yZVwiO1xyXG5pbXBvcnQgeyBTdGF0ZSB9IGZyb20gXCIuLi8uLi9zdG9yZS9yZWR1Y2Vycy9pbmRleFwiO1xyXG5pbXBvcnQgKiBhcyBzaGFyZWRNb2R1bGVSZWR1Y2VycyBmcm9tIFwiLi4vLi4vc3RvcmUvcmVkdWNlcnMvaW5kZXhcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCAnLi4vLi4vLi4vZ2xvYmFsZGVwZW5kZW5jaWVzL2hlbHBlcnMvZm9udGF3ZXNvbWUtaWNvbnMnO1xyXG5pbXBvcnQgeyBUaGVtZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RoZW1lcy5tb2RlbCc7XHJcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xheW91dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGhlbWUuc2VydmljZSc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhbFN0b3JhZ2VQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vLi4vLi4vZ2xvYmFsZGVwZW5kZW5jaWVzL2NvbnN0YW50cy9sb2NhbHN0b3JhZ2UtcHJvcGVydGllcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtaGVhZGVyLXRvcFwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vaGVhZGVyLXRvcC5jb21wb25lbnQuaHRtbFwiLFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEhlYWRlclRvcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICB0aGVtZU1vZGVsJDogT2JzZXJ2YWJsZTxUaGVtZU1vZGVsPjtcclxuICBsYXlvdXRDb25mOiBhbnk7XHJcbiAgbWVudUl0ZW1zOiBhbnk7XHJcbiAgZWdyZXRUaGVtZXM6IGFueVtdID0gW107XHJcbiAgY3VycmVudExhbmcgPSBcImVuXCI7XHJcbiAgYXZhaWxhYmxlTGFuZ3MgPSBbXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6IFwiRW5nbGlzaFwiLFxyXG4gICAgICBjb2RlOiBcImVuXCJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6IFwi4LCk4LGG4LCy4LGB4LCX4LGBXCIsXHJcbiAgICAgIGNvZGU6IFwidGVcIlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgbmFtZTogXCLtlZzqta3slrRcIixcclxuICAgICAgY29kZTogXCJrb1wiXHJcbiAgICB9XHJcbiAgXTtcclxuICBASW5wdXQoKSBub3RpZmljUGFuZWw7XHJcbiAgYXV0aGVudGljYXRlZFVzZXJSZWNvcmQkOiBPYnNlcnZhYmxlPFVzZXJNb2RlbD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBsYXlvdXQ6IExheW91dFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8U3RhdGU+LFxyXG4gICAgcHVibGljIGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2UsXHJcbiAgICBcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudGhlbWVNb2RlbCQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHNoYXJlZE1vZHVsZVJlZHVjZXJzLmdldFRoZW1lTW9kZWwpKTtcclxuICAgIHRoaXMubGF5b3V0Q29uZiA9IHRoaXMubGF5b3V0LmxheW91dENvbmY7XHJcbiAgICB0aGlzLmVncmV0VGhlbWVzID0gdGhpcy50aGVtZVNlcnZpY2UuZWdyZXRUaGVtZXM7XHJcbiAgICB0aGlzLmF1dGhlbnRpY2F0ZWRVc2VyUmVjb3JkJCA9IHRoaXMuc3RvcmUucGlwZShcclxuICAgICAgc2VsZWN0KHNoYXJlZE1vZHVsZVJlZHVjZXJzLmdldEF1dGhlbnRpY2F0ZWRVc2VyTW9kZWwpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7IH1cclxuXHJcbiAgc2V0TGFuZygpIHtcclxuXHJcbiAgICB0aGlzLnRyYW5zbGF0ZS51c2UodGhpcy5jdXJyZW50TGFuZyk7XHJcbiAgICBsZXQgY3VycmVudEN1bHR1cmUgPSB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KExvY2FsU3RvcmFnZVByb3BlcnRpZXMuQ3VycmVudEN1bHR1cmUpO1xyXG5cclxuICAgIGlmIChjdXJyZW50Q3VsdHVyZSA9PT0gJ251bGwnIHx8IGN1cnJlbnRDdWx0dXJlID09PSAndW5kZWZpbmVkJykge1xyXG4gICAgICAgIGN1cnJlbnRDdWx0dXJlID0gJ2VuJztcclxuICAgIH1cclxuICAgIHRoaXMuY3VycmVudExhbmcgPSBjdXJyZW50Q3VsdHVyZTtcclxuICAgIGxldCBlbnZpcm9ubWVudCA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oTG9jYWxTdG9yYWdlUHJvcGVydGllcy5FbnZpcm9ubWVudCkpO1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLnNldChMb2NhbFN0b3JhZ2VQcm9wZXJ0aWVzLkN1cnJlbnRDdWx0dXJlLCB0aGlzLmN1cnJlbnRMYW5nLCBudWxsLCBlbnZpcm9ubWVudC5jb29raWVQYXRoLCB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUsIGZhbHNlLCBcIlN0cmljdFwiKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVRoZW1lKHRoZW1lKSB7XHJcbiAgICAvLyB0aGlzLnRoZW1lU2VydmljZS5jaGFuZ2VUaGVtZSh0aGlzLnJlbmRlcmVyLCB0aGVtZSk7XHJcbiAgfVxyXG4gIHRvZ2dsZU5vdGlmaWMoKSB7XHJcbiAgICB0aGlzLm5vdGlmaWNQYW5lbC50b2dnbGUoKTtcclxuICB9XHJcbiAgdG9nZ2xlU2lkZW5hdigpIHtcclxuICAgIGlmICh0aGlzLmxheW91dENvbmYuc2lkZWJhclN0eWxlID09PSBcImNsb3NlZFwiKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmxheW91dC5wdWJsaXNoTGF5b3V0Q2hhbmdlKHtcclxuICAgICAgICBzaWRlYmFyU3R5bGU6IFwiZnVsbFwiXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5sYXlvdXQucHVibGlzaExheW91dENoYW5nZSh7XHJcbiAgICAgIHNpZGViYXJTdHlsZTogXCJjbG9zZWRcIlxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJoZWFkZXItdG9wbmF2IG1hdC1lbGV2YXRpb24tejJcIj5cclxuICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidG9wbmF2XCI+XHJcbiAgICAgIDwhLS0gQXBwIExvZ28gLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0b3BiYXItYnJhbmRpbmdcIj5cclxuICAgICAgICA8aW1nIHNyYz1cIih0aGVtZU1vZGVsJCAgfCBhc3luYykuY29tcGFueU1pbmlMb2dvXCIgYWx0PVwiXCIgY2xhc3M9XCJhcHAtbG9nb1wiPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDx1bCBjbGFzcz1cIm1lbnVcIiAqbmdJZj1cIiFsYXlvdXRDb25mLmlzTW9iaWxlXCI+XHJcbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1lbnVJdGVtczsgbGV0IGkgPSBpbmRleDtcIj5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgIT09ICdzZXBhcmF0b3InXCIgcm91dGVyTGlua0FjdGl2ZT1cIm9wZW5cIj5cclxuICAgICAgICAgICAgPGEgbWF0UmlwcGxlIHJvdXRlckxpbms9XCIve3tpdGVtLnN0YXRlfX1cIiAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ2xpbmsnXCI+XHJcbiAgICAgICAgICAgICAgPG1hdC1pY29uPnt7aXRlbS5pY29ufX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIHt7aXRlbS5uYW1lIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS50eXBlID09PSAnZHJvcERvd24nXCI+XHJcbiAgICAgICAgICAgICAgPGxhYmVsIG1hdFJpcHBsZSBmb3I9XCJkcm9wLXt7aX19XCIgY2xhc3M9XCJ0b2dnbGVcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj57e2l0ZW0uaWNvbn19PC9tYXQtaWNvbj4ge3tpdGVtLm5hbWUgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgPGEgbWF0UmlwcGxlPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPnt7aXRlbS5pY29ufX08L21hdC1pY29uPiB7e2l0ZW0ubmFtZSB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cImRyb3Ate3tpfX1cIiAvPlxyXG4gICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbUx2TDIgb2YgaXRlbS5zdWI7IGxldCBqID0gaW5kZXg7XCIgcm91dGVyTGlua0FjdGl2ZT1cIm9wZW5cIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCJ7eyBpdGVtTHZMMi5zdGF0ZSA/ICcvJytpdGVtTHZMMi5zdGF0ZSA6ICcnfX1cIiBhcHBEcm9wZG93blRvZ2dsZVxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbUx2TDIudHlwZSA9PT0gJ2FwcGxpY2F0aW9ubGluaydcIiBtYXRSaXBwbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLW5hbWUgbHZsMlwiPnt7XHJcbiAgICAgICAgICAgICAgICAgIGl0ZW1MdkwyLm5hbWUgfCB0cmFuc2xhdGVcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGZ4RmxleD48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxhIG1hdFJpcHBsZSByb3V0ZXJMaW5rPVwie3tpdGVtLnN0YXRlID8gJy8nK2l0ZW0uc3RhdGUgOiAnJ319L3t7aXRlbUx2TDIuc3RhdGV9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtTHZMMi50eXBlICE9PSAnZHJvcERvd24nICYmIGl0ZW1MdkwyLnR5cGUgIT09ICdhcHBsaWNhdGlvbmxpbmsnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaXRlbUx2TDIuaWNvblwiPnt7aXRlbUx2TDIuaWNvbn19PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICB7e2l0ZW1MdkwyLm5hbWUgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICAgICAgICA8L2E+XHJcblxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtTHZMMi50eXBlID09PSAnZHJvcERvd24nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIG1hdFJpcHBsZSBmb3I9XCJkcm9wLXt7aX19e3tqfX1cIiBjbGFzcz1cInRvZ2dsZVwiPnt7aXRlbUx2TDIubmFtZSB8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8YSBtYXRSaXBwbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpdGVtTHZMMi5pY29uXCI+e3tpdGVtTHZMMi5pY29ufX08L21hdC1pY29uPiB7e2l0ZW1MdkwyLm5hbWUgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJkcm9wLXt7aX19e3tqfX1cIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gTGV2ZWwgMyAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW1MdkwzIG9mIGl0ZW1MdkwyLnN1YlwiIHJvdXRlckxpbmtBY3RpdmU9XCJvcGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIG1hdFJpcHBsZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbms9XCJ7e2l0ZW0uc3RhdGUgPyAnLycraXRlbS5zdGF0ZSA6ICcnfX17e2l0ZW1MdkwyLnN0YXRlID8gJy8nK2l0ZW1MdkwyLnN0YXRlIDogJyd9fS97e2l0ZW1MdkwzLnN0YXRlfX1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpdGVtTHZMMy5pY29uXCI+e3tpdGVtTHZMMy5pY29ufX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt7aXRlbUx2TDMubmFtZSB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgPC91bD5cclxuICAgICAgPHNwYW4gZnhGbGV4Pjwvc3Bhbj5cclxuICAgICAgPCEtLSBFbmQgTmF2aWdhdGlvbiAtLT5cclxuXHJcbiAgICAgIDwhLS0gTGFuZ3VhZ2UgU3dpdGNoZXIgLS0+XHJcbiAgICAgIDxtYXQtbWVudSAjbGFuZ3VhZ2VDaGFuZ2U9XCJtYXRNZW51XCI+XHJcbiAgICAgICAgPG1hdC1zZWxlY3QgKm5nSWY9XCIhbGF5b3V0Q29uZi5pc01vYmlsZVwiIHBsYWNlaG9sZGVyPVwiXCIgaWQ9XCJsYW5nVG9nZ2xlXCIgW3N0eWxlLndpZHRoXT1cIidhdXRvJ1wiXHJcbiAgICAgICAgICBuYW1lPVwiY3VycmVudExhbmdcIiBbKG5nTW9kZWwpXT1cImN1cnJlbnRMYW5nXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJzZXRMYW5nKClcIiBjbGFzcz1cInRvcGJhci1idXR0b24tcmlnaHRcIj5cclxuICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBsYW5nIG9mIGF2YWlsYWJsZUxhbmdzXCIgW3ZhbHVlXT1cImxhbmcuY29kZVwiIG5nRGVmYXVsdENvbnRyb2w+e3sgbGFuZy5uYW1lIH19XHJcbiAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgICA8IS0tIFRoZW1lIFN3aXRjaGVyIC0tPlxyXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBpZD1cInNjaGVtZVRvZ2dsZVwiIFtzdHlsZS5vdmVyZmxvd109XCIndmlzaWJsZSdcIiBtYXRUb29sdGlwQ2xhc3M9XCJ0b29sdGlwQ2xhc3MtbWF0XCIgbWF0VG9vbHRpcD1cIkNvbG9yIFNjaGVtZXNcIlxyXG4gICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJ0aGVtZU1lbnVcIiBjbGFzcz1cInRvcGJhci1idXR0b24tcmlnaHRcIj5cclxuICAgICAgICA8bWF0LWljb24+Zm9ybWF0X2NvbG9yX2ZpbGw8L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPG1hdC1tZW51ICN0aGVtZU1lbnU9XCJtYXRNZW51XCI+XHJcbiAgICAgICAgPG1hdC1ncmlkLWxpc3QgY2xhc3M9XCJ0aGVtZS1saXN0XCIgY29scz1cIjJcIiByb3dIZWlnaHQ9XCI0OHB4XCI+XHJcbiAgICAgICAgICA8bWF0LWdyaWQtdGlsZSAqbmdGb3I9XCJsZXQgdGhlbWUgb2YgZWdyZXRUaGVtZXNcIiAoY2xpY2spPVwiY2hhbmdlVGhlbWUodGhlbWUpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgbWF0LW1lbnUtaXRlbSBbdGl0bGVdPVwidGhlbWUubmFtZVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgW3N0eWxlLmJhY2tncm91bmRdPVwidGhlbWUuYmFzZUNvbG9yXCIgY2xhc3M9XCJlZ3JldC1zd2F0Y2hcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhY3RpdmUtaWNvblwiICpuZ0lmPVwidGhlbWUuaXNBY3RpdmVcIj5jaGVjazwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9tYXQtZ3JpZC10aWxlPlxyXG4gICAgICAgIDwvbWF0LWdyaWQtbGlzdD5cclxuICAgICAgPC9tYXQtbWVudT5cclxuXHJcbiAgICAgIDwhLS0gTm90aWZpY2F0aW9uIHRvZ2dsZSBidXR0b24gLS0+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIG1hdFRvb2x0aXA9XCJ7eyAnU0hFTEwuTk9USUZJQ0FUSU9OUycgfCB0cmFuc2xhdGV9fVwiIG1hdFRvb2x0aXBDbGFzcz1cInRvb2x0aXBDbGFzcy1tYXRcIiAoY2xpY2spPVwidG9nZ2xlTm90aWZpYygpXCJcclxuICAgICAgICBbc3R5bGUub3ZlcmZsb3ddPVwiJ3Zpc2libGUnXCIgY2xhc3M9XCJ0b3BiYXItYnV0dG9uLXJpZ2h0XCI+XHJcbiAgICAgICAgPG1hdC1pY29uPm5vdGlmaWNhdGlvbnM8L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibm90aWZpY2F0aW9uLW51bWJlciBtYXQtYmctd2FyblwiPjM8L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8IS0tIFRvcCBsZWZ0IHVzZXIgbWVudSAtLT5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImFjY291bnRNZW51XCIgY2xhc3M9XCJ0b3BiYXItYnV0dG9uLXJpZ2h0IG1yLTEgaW1nLWJ1dHRvblwiPlxyXG4gICAgICAgIDxpbWcgKm5nSWY9XCIoYXV0aGVudGljYXRlZFVzZXJSZWNvcmQkIHwgYXN5bmMpICYmIChhdXRoZW50aWNhdGVkVXNlclJlY29yZCQgfCBhc3luYykucHJvZmlsZUltYWdlICE9IG51bGxcIlxyXG4gICAgICAgICAgW3NyY109XCIoYXV0aGVudGljYXRlZFVzZXJSZWNvcmQkIHwgYXN5bmMpLnByb2ZpbGVJbWFnZVwiPlxyXG4gICAgICAgIDxpbWdcclxuICAgICAgICAgICpuZ0lmPVwiKGF1dGhlbnRpY2F0ZWRVc2VyUmVjb3JkJCB8IGFzeW5jKSA9PSBudWxsIHx8IChhdXRoZW50aWNhdGVkVXNlclJlY29yZCQgfCBhc3luYykucHJvZmlsZUltYWdlID09IG51bGxcIlxyXG4gICAgICAgICAgc3JjPVwiLi4vLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9mYWNlcy8xOC5wbmdcIj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxtYXQtbWVudSAjYWNjb3VudE1lbnU9XCJtYXRNZW51XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIFtyb3V0ZXJMaW5rXT1cIlsnL3Byb2ZpbGUvb3ZlcnZpZXcnXVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uPmFjY291bnRfYm94PC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxzcGFuPlByb2ZpbGU8L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIFttYXRNZW51VHJpZ2dlckZvcl09XCJsYW5ndWFnZUNoYW5nZVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uPmxhbmd1YWdlPC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxzcGFuPkxhbmd1YWdlPC9zcGFuPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSBbcm91dGVyTGlua109XCJbJy9wcm9maWxlL3NldHRpbmdzJ11cIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5zZXR0aW5nczwvbWF0LWljb24+XHJcbiAgICAgICAgICA8c3Bhbj5BY2NvdW50IFNldHRpbmdzPC9zcGFuPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbT5cclxuICAgICAgICAgIDxtYXQtaWNvbj5ub3RpZmljYXRpb25zX29mZjwvbWF0LWljb24+XHJcbiAgICAgICAgICA8c3Bhbj5EaXNhYmxlIGFsZXJ0czwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gW3JvdXRlckxpbmtdPVwiWycvc2Vzc2lvbnMvc2lnbmluJ11cIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5leGl0X3RvX2FwcDwvbWF0LWljb24+XHJcbiAgICAgICAgICA8c3Bhbj5TaWduIG91dDwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9tYXQtbWVudT5cclxuICAgICAgPCEtLSBNb2JpbGUgc2NyZWVuIG1lbnUgdG9nZ2xlIC0tPlxyXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBjbGFzcz1cIm1yLTFcIiAoY2xpY2spPVwidG9nZ2xlU2lkZW5hdigpXCIgKm5nSWY9XCJsYXlvdXRDb25mLmlzTW9iaWxlXCI+XHJcbiAgICAgICAgPG1hdC1pY29uPm1lbnU8L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=