@thetradeengineorg1/snova-shell-module 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/README.md +24 -0
  2. package/bundles/thetradeengineorg1-snova-shell-module.umd.js +13896 -0
  3. package/bundles/thetradeengineorg1-snova-shell-module.umd.js.map +1 -0
  4. package/esm2015/lib/globaldependencies/components/componentbase.js +538 -0
  5. package/esm2015/lib/globaldependencies/constants/feature-ids.js +449 -0
  6. package/esm2015/lib/globaldependencies/constants/localstorage-properties.js +38 -0
  7. package/esm2015/lib/globaldependencies/helpers/dom.helper.js +70 -0
  8. package/esm2015/lib/globaldependencies/helpers/fontawesome-icons.js +144 -0
  9. package/esm2015/lib/globaldependencies/helpers/moment-utc-date-adapter.js +37 -0
  10. package/esm2015/lib/globaldependencies/helpers/window.helper.js +32 -0
  11. package/esm2015/lib/globaldependencies/intercepter/jwt.interceptor.js +40 -0
  12. package/esm2015/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.js +36 -0
  13. package/esm2015/lib/globaldependencies/pipes/highLightText.pipe.js +24 -0
  14. package/esm2015/lib/globaldependencies/pipes/orderby-pipe.js +24 -0
  15. package/esm2015/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.js +22 -0
  16. package/esm2015/lib/globaldependencies/pipes/sanitize.pipe.js +24 -0
  17. package/esm2015/lib/globaldependencies/pipes/softlabels.pipes.js +346 -0
  18. package/esm2015/lib/globaldependencies/pipes/utctolocaltime.pipe.js +23 -0
  19. package/esm2015/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.js +25 -0
  20. package/esm2015/lib/globaldependencies/pipes/workflowstatus.pipes.js +27 -0
  21. package/esm2015/lib/shell-components/components/Payments/account.component.js +50 -0
  22. package/esm2015/lib/shell-components/components/Payments/company-information.js +262 -0
  23. package/esm2015/lib/shell-components/components/Payments/company-plans.component.js +138 -0
  24. package/esm2015/lib/shell-components/components/Payments/document.component.js +57 -0
  25. package/esm2015/lib/shell-components/components/Payments/payment-method.component.js +32 -0
  26. package/esm2015/lib/shell-components/components/Payments/product-service.component.js +143 -0
  27. package/esm2015/lib/shell-components/components/Payments/purchase-more-licenses.js +152 -0
  28. package/esm2015/lib/shell-components/components/Payments/transactions.component.js +60 -0
  29. package/esm2015/lib/shell-components/components/admin-layout/admin-layout.component.js +250 -0
  30. package/esm2015/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.js +89 -0
  31. package/esm2015/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.js +90 -0
  32. package/esm2015/lib/shell-components/components/export-import-configuration/export-configuration.component.js +357 -0
  33. package/esm2015/lib/shell-components/components/feed-time/feed-time-dialog.component.js +85 -0
  34. package/esm2015/lib/shell-components/components/feed-time/feed-time.component.js +83 -0
  35. package/esm2015/lib/shell-components/components/header-side/header-side.component.js +1642 -0
  36. package/esm2015/lib/shell-components/components/header-top/header-top.component.js +93 -0
  37. package/esm2015/lib/shell-components/components/lives/lives-welcome-page.js +26 -0
  38. package/esm2015/lib/shell-components/components/menu/menu.component.js +2478 -0
  39. package/esm2015/lib/shell-components/components/menu/searchTask.enum.js +10 -0
  40. package/esm2015/lib/shell-components/components/notifications/announcement-dialog.component.js +73 -0
  41. package/esm2015/lib/shell-components/components/notifications/notifications.component.js +449 -0
  42. package/esm2015/lib/shell-components/components/sidebar-top/sidebar-top.component.js +33 -0
  43. package/esm2015/lib/shell-components/components/sidenav/side-bar.component.js +81 -0
  44. package/esm2015/lib/shell-components/components/sidenav/sidenav.component.js +43 -0
  45. package/esm2015/lib/shell-components/components/submit-feedback/submit-feedback.component.js +71 -0
  46. package/esm2015/lib/shell-components/constants/api-urls.js +1052 -0
  47. package/esm2015/lib/shell-components/constants/available-languages.js +25 -0
  48. package/esm2015/lib/shell-components/constants/channel-names.js +38 -0
  49. package/esm2015/lib/shell-components/constants/menu-categories.js +6 -0
  50. package/esm2015/lib/shell-components/constants/notification-routes.js +6 -0
  51. package/esm2015/lib/shell-components/constants/notification-type-ids.js +42 -0
  52. package/esm2015/lib/shell-components/enum/recentSearchType.enum.js +13 -0
  53. package/esm2015/lib/shell-components/models/AppMenuItemModel.js +3 -0
  54. package/esm2015/lib/shell-components/models/AppNotification.js +17 -0
  55. package/esm2015/lib/shell-components/models/AssetAssignedNotificationModel.js +12 -0
  56. package/esm2015/lib/shell-components/models/ChannelUpdateModel.js +3 -0
  57. package/esm2015/lib/shell-components/models/EmployeeStatusModel.js +3 -0
  58. package/esm2015/lib/shell-components/models/IAdjust-screen-options.js +2 -0
  59. package/esm2015/lib/shell-components/models/IBadge.js +2 -0
  60. package/esm2015/lib/shell-components/models/IChildItem.js +2 -0
  61. package/esm2015/lib/shell-components/models/ILayout-change-options.js +2 -0
  62. package/esm2015/lib/shell-components/models/IMenuItem.js +2 -0
  63. package/esm2015/lib/shell-components/models/IlayoutConf.js +2 -0
  64. package/esm2015/lib/shell-components/models/IntroModel.js +3 -0
  65. package/esm2015/lib/shell-components/models/MessageDetails.js +3 -0
  66. package/esm2015/lib/shell-components/models/MessageTypingDetails.js +3 -0
  67. package/esm2015/lib/shell-components/models/NewProjectCreatedNotificationModel.js +10 -0
  68. package/esm2015/lib/shell-components/models/NewProjectFeatureNotificationModel.js +10 -0
  69. package/esm2015/lib/shell-components/models/NotificationsOutPutModel.js +22 -0
  70. package/esm2015/lib/shell-components/models/ProjectSearchCriteriaInputModel.js +3 -0
  71. package/esm2015/lib/shell-components/models/RecentSearchModel.js +5 -0
  72. package/esm2015/lib/shell-components/models/ReportConfigAssignedNotification.js +11 -0
  73. package/esm2015/lib/shell-components/models/ReportSubmittedNotification.js +12 -0
  74. package/esm2015/lib/shell-components/models/RoleUpdatedNotification.js +9 -0
  75. package/esm2015/lib/shell-components/models/UserStoryAssignedNotification.js +13 -0
  76. package/esm2015/lib/shell-components/models/archiveUserStoryModel.js +10 -0
  77. package/esm2015/lib/shell-components/models/companieslist.model.js +3 -0
  78. package/esm2015/lib/shell-components/models/company-model.js +7 -0
  79. package/esm2015/lib/shell-components/models/company-payment-model.js +3 -0
  80. package/esm2015/lib/shell-components/models/dragedWidget.js +3 -0
  81. package/esm2015/lib/shell-components/models/employee-List.js +3 -0
  82. package/esm2015/lib/shell-components/models/employee.js +4 -0
  83. package/esm2015/lib/shell-components/models/entityRoleFeature.js +3 -0
  84. package/esm2015/lib/shell-components/models/export-configuration-model.js +3 -0
  85. package/esm2015/lib/shell-components/models/export-data.module.js +8 -0
  86. package/esm2015/lib/shell-components/models/goalApprovedNotificationModel.js +9 -0
  87. package/esm2015/lib/shell-components/models/import-configuration-model.js +3 -0
  88. package/esm2015/lib/shell-components/models/initialStatusofUsers.js +3 -0
  89. package/esm2015/lib/shell-components/models/invoiceOutput-model.js +3 -0
  90. package/esm2015/lib/shell-components/models/leaveApplicationNotifiction.js +9 -0
  91. package/esm2015/lib/shell-components/models/multiChartsScheduling.js +11 -0
  92. package/esm2015/lib/shell-components/models/parkUserStoryInputModel.js +10 -0
  93. package/esm2015/lib/shell-components/models/project.js +3 -0
  94. package/esm2015/lib/shell-components/models/recentSearchApiModel.js +3 -0
  95. package/esm2015/lib/shell-components/models/searchCriteriaInputModelBase.js +3 -0
  96. package/esm2015/lib/shell-components/models/shellModulesInfo.js +7 -0
  97. package/esm2015/lib/shell-components/models/softlabels-model.js +7 -0
  98. package/esm2015/lib/shell-components/models/sprintReplanRequestedModel.js +9 -0
  99. package/esm2015/lib/shell-components/models/sprintStartedNotificationModel.js +9 -0
  100. package/esm2015/lib/shell-components/models/store-model.js +3 -0
  101. package/esm2015/lib/shell-components/models/store-search-model.js +4 -0
  102. package/esm2015/lib/shell-components/models/themes.model.js +3 -0
  103. package/esm2015/lib/shell-components/models/timesheetenabledisable.js +4 -0
  104. package/esm2015/lib/shell-components/models/user.js +8 -0
  105. package/esm2015/lib/shell-components/models/userStory.js +3 -0
  106. package/esm2015/lib/shell-components/models/userStoryCommentNotificationModel.js +9 -0
  107. package/esm2015/lib/shell-components/models/userStoryUpdateNotificationModel.js +9 -0
  108. package/esm2015/lib/shell-components/models/userstory-custom-fields.model.js +3 -0
  109. package/esm2015/lib/shell-components/models/validation.model.js +2 -0
  110. package/esm2015/lib/shell-components/models/widgetlist.js +6 -0
  111. package/esm2015/lib/shell-components/models/workspaceList.js +3 -0
  112. package/esm2015/lib/shell-components/services/authentication.service.js +96 -0
  113. package/esm2015/lib/shell-components/services/chat.service.js +67 -0
  114. package/esm2015/lib/shell-components/services/common-used.service.js +263 -0
  115. package/esm2015/lib/shell-components/services/feature.service.js +101 -0
  116. package/esm2015/lib/shell-components/services/google-analytics.service.js +24 -0
  117. package/esm2015/lib/shell-components/services/layout.service.js +68 -0
  118. package/esm2015/lib/shell-components/services/payment.service.js +103 -0
  119. package/esm2015/lib/shell-components/services/recentSearch.service.js +90 -0
  120. package/esm2015/lib/shell-components/services/shell.modules.service.js +24 -0
  121. package/esm2015/lib/shell-components/services/signalr.service.js +113 -0
  122. package/esm2015/lib/shell-components/services/theme.service.js +161 -0
  123. package/esm2015/lib/shell-components/shell.module.js +436 -0
  124. package/esm2015/lib/shell-components/shell.routing.js +16 -0
  125. package/esm2015/lib/shell-components/store/actions/authentication.actions.js +260 -0
  126. package/esm2015/lib/shell-components/store/actions/chat.actions.js +248 -0
  127. package/esm2015/lib/shell-components/store/actions/menuitems.actions.js +39 -0
  128. package/esm2015/lib/shell-components/store/actions/notification-validator.action.js +19 -0
  129. package/esm2015/lib/shell-components/store/actions/notifications.actions.js +74 -0
  130. package/esm2015/lib/shell-components/store/effects/authentication.effects.js +503 -0
  131. package/esm2015/lib/shell-components/store/effects/chat.effects.js +139 -0
  132. package/esm2015/lib/shell-components/store/effects/index.js +13 -0
  133. package/esm2015/lib/shell-components/store/effects/menuitems.effects.js +53 -0
  134. package/esm2015/lib/shell-components/store/effects/notification-validator.effects.js +56 -0
  135. package/esm2015/lib/shell-components/store/effects/notifications.effects.js +116 -0
  136. package/esm2015/lib/shell-components/store/reducers/authentication.reducers.js +86 -0
  137. package/esm2015/lib/shell-components/store/reducers/chat.reducers.js +68 -0
  138. package/esm2015/lib/shell-components/store/reducers/index.js +80 -0
  139. package/esm2015/lib/shell-components/store/reducers/menuitems.reducers.js +56 -0
  140. package/esm2015/lib/shell-components/store/reducers/notification-validator.reducers.js +13 -0
  141. package/esm2015/lib/shell-components/store/reducers/notifications.reducers.js +38 -0
  142. package/esm2015/public-api.js +90 -0
  143. package/esm2015/store/reducers/index.js +47 -0
  144. package/esm2015/thetradeengineorg1-snova-shell-module.js +5 -0
  145. package/fesm2015/thetradeengineorg1-snova-shell-module.js +12808 -0
  146. package/fesm2015/thetradeengineorg1-snova-shell-module.js.map +1 -0
  147. package/lib/globaldependencies/components/componentbase.d.ts +455 -0
  148. package/lib/globaldependencies/constants/feature-ids.d.ts +448 -0
  149. package/lib/globaldependencies/constants/localstorage-properties.d.ts +37 -0
  150. package/lib/globaldependencies/helpers/dom.helper.d.ts +7 -0
  151. package/lib/globaldependencies/helpers/fontawesome-icons.d.ts +1 -0
  152. package/lib/globaldependencies/helpers/moment-utc-date-adapter.d.ts +9 -0
  153. package/lib/globaldependencies/helpers/window.helper.d.ts +12 -0
  154. package/lib/globaldependencies/intercepter/jwt.interceptor.d.ts +11 -0
  155. package/lib/globaldependencies/pipes/fetchSizedAndCachedImage.pipe.d.ts +8 -0
  156. package/lib/globaldependencies/pipes/highLightText.pipe.d.ts +8 -0
  157. package/lib/globaldependencies/pipes/orderby-pipe.d.ts +9 -0
  158. package/lib/globaldependencies/pipes/removeSpecialCharacters.pipe.d.ts +8 -0
  159. package/lib/globaldependencies/pipes/sanitize.pipe.d.ts +11 -0
  160. package/lib/globaldependencies/pipes/softlabels.pipes.d.ts +8 -0
  161. package/lib/globaldependencies/pipes/utctolocaltime.pipe.d.ts +8 -0
  162. package/lib/globaldependencies/pipes/utctolocaltimewithdate.pipe.d.ts +8 -0
  163. package/lib/globaldependencies/pipes/workflowstatus.pipes.d.ts +8 -0
  164. package/lib/shell-components/components/Payments/account.component.d.ts +14 -0
  165. package/lib/shell-components/components/Payments/company-information.d.ts +62 -0
  166. package/lib/shell-components/components/Payments/company-plans.component.d.ts +47 -0
  167. package/lib/shell-components/components/Payments/document.component.d.ts +20 -0
  168. package/lib/shell-components/components/Payments/payment-method.component.d.ts +15 -0
  169. package/lib/shell-components/components/Payments/product-service.component.d.ts +48 -0
  170. package/lib/shell-components/components/Payments/purchase-more-licenses.d.ts +37 -0
  171. package/lib/shell-components/components/Payments/transactions.component.d.ts +28 -0
  172. package/lib/shell-components/components/admin-layout/admin-layout.component.d.ts +67 -0
  173. package/lib/shell-components/components/all-work-items-dialog/all-work-items-dialog.component.d.ts +32 -0
  174. package/lib/shell-components/components/confirmation-dialog/confirmation-dialog.component.d.ts +32 -0
  175. package/lib/shell-components/components/export-import-configuration/export-configuration.component.d.ts +60 -0
  176. package/lib/shell-components/components/feed-time/feed-time-dialog.component.d.ts +33 -0
  177. package/lib/shell-components/components/feed-time/feed-time.component.d.ts +27 -0
  178. package/lib/shell-components/components/header-side/header-side.component.d.ts +216 -0
  179. package/lib/shell-components/components/header-top/header-top.component.d.ts +40 -0
  180. package/lib/shell-components/components/lives/lives-welcome-page.d.ts +14 -0
  181. package/lib/shell-components/components/menu/menu.component.d.ts +220 -0
  182. package/lib/shell-components/components/menu/searchTask.enum.d.ts +8 -0
  183. package/lib/shell-components/components/notifications/announcement-dialog.component.d.ts +27 -0
  184. package/lib/shell-components/components/notifications/notifications.component.d.ts +53 -0
  185. package/lib/shell-components/components/sidebar-top/sidebar-top.component.d.ts +10 -0
  186. package/lib/shell-components/components/sidenav/side-bar.component.d.ts +23 -0
  187. package/lib/shell-components/components/sidenav/sidenav.component.d.ts +17 -0
  188. package/lib/shell-components/components/submit-feedback/submit-feedback.component.d.ts +25 -0
  189. package/lib/shell-components/constants/api-urls.d.ts +1051 -0
  190. package/lib/shell-components/constants/available-languages.d.ts +7 -0
  191. package/lib/shell-components/constants/channel-names.d.ts +37 -0
  192. package/lib/shell-components/constants/menu-categories.d.ts +5 -0
  193. package/lib/shell-components/constants/notification-routes.d.ts +5 -0
  194. package/lib/shell-components/constants/notification-type-ids.d.ts +41 -0
  195. package/lib/shell-components/enum/recentSearchType.enum.d.ts +11 -0
  196. package/lib/shell-components/models/AppMenuItemModel.d.ts +12 -0
  197. package/lib/shell-components/models/AppNotification.d.ts +12 -0
  198. package/lib/shell-components/models/AssetAssignedNotificationModel.d.ts +10 -0
  199. package/lib/shell-components/models/ChannelUpdateModel.d.ts +47 -0
  200. package/lib/shell-components/models/EmployeeStatusModel.d.ts +11 -0
  201. package/lib/shell-components/models/IAdjust-screen-options.d.ts +4 -0
  202. package/lib/shell-components/models/IBadge.d.ts +4 -0
  203. package/lib/shell-components/models/IChildItem.d.ts +7 -0
  204. package/lib/shell-components/models/ILayout-change-options.d.ts +4 -0
  205. package/lib/shell-components/models/IMenuItem.d.ts +14 -0
  206. package/lib/shell-components/models/IlayoutConf.d.ts +10 -0
  207. package/lib/shell-components/models/IntroModel.d.ts +3 -0
  208. package/lib/shell-components/models/MessageDetails.d.ts +55 -0
  209. package/lib/shell-components/models/MessageTypingDetails.d.ts +9 -0
  210. package/lib/shell-components/models/NewProjectCreatedNotificationModel.d.ts +8 -0
  211. package/lib/shell-components/models/NewProjectFeatureNotificationModel.d.ts +8 -0
  212. package/lib/shell-components/models/NotificationsOutPutModel.d.ts +41 -0
  213. package/lib/shell-components/models/ProjectSearchCriteriaInputModel.d.ts +10 -0
  214. package/lib/shell-components/models/RecentSearchModel.d.ts +14 -0
  215. package/lib/shell-components/models/ReportConfigAssignedNotification.d.ts +9 -0
  216. package/lib/shell-components/models/ReportSubmittedNotification.d.ts +10 -0
  217. package/lib/shell-components/models/RoleUpdatedNotification.d.ts +7 -0
  218. package/lib/shell-components/models/UserStoryAssignedNotification.d.ts +8 -0
  219. package/lib/shell-components/models/archiveUserStoryModel.d.ts +7 -0
  220. package/lib/shell-components/models/companieslist.model.d.ts +8 -0
  221. package/lib/shell-components/models/company-model.d.ts +31 -0
  222. package/lib/shell-components/models/company-payment-model.d.ts +18 -0
  223. package/lib/shell-components/models/dragedWidget.d.ts +16 -0
  224. package/lib/shell-components/models/employee-List.d.ts +8 -0
  225. package/lib/shell-components/models/employee.d.ts +60 -0
  226. package/lib/shell-components/models/entityRoleFeature.d.ts +9 -0
  227. package/lib/shell-components/models/export-configuration-model.d.ts +8 -0
  228. package/lib/shell-components/models/export-data.module.d.ts +6 -0
  229. package/lib/shell-components/models/goalApprovedNotificationModel.d.ts +8 -0
  230. package/lib/shell-components/models/import-configuration-model.d.ts +3 -0
  231. package/lib/shell-components/models/initialStatusofUsers.d.ts +5 -0
  232. package/lib/shell-components/models/invoiceOutput-model.d.ts +9 -0
  233. package/lib/shell-components/models/leaveApplicationNotifiction.d.ts +7 -0
  234. package/lib/shell-components/models/multiChartsScheduling.d.ts +9 -0
  235. package/lib/shell-components/models/parkUserStoryInputModel.d.ts +7 -0
  236. package/lib/shell-components/models/project.d.ts +28 -0
  237. package/lib/shell-components/models/recentSearchApiModel.d.ts +6 -0
  238. package/lib/shell-components/models/searchCriteriaInputModelBase.d.ts +10 -0
  239. package/lib/shell-components/models/shellModulesInfo.d.ts +16 -0
  240. package/lib/shell-components/models/softlabels-model.d.ts +66 -0
  241. package/lib/shell-components/models/sprintReplanRequestedModel.d.ts +7 -0
  242. package/lib/shell-components/models/sprintStartedNotificationModel.d.ts +7 -0
  243. package/lib/shell-components/models/store-model.d.ts +13 -0
  244. package/lib/shell-components/models/store-search-model.d.ts +7 -0
  245. package/lib/shell-components/models/themes.model.d.ts +9 -0
  246. package/lib/shell-components/models/timesheetenabledisable.d.ts +16 -0
  247. package/lib/shell-components/models/user.d.ts +40 -0
  248. package/lib/shell-components/models/userStory.d.ts +188 -0
  249. package/lib/shell-components/models/userStoryCommentNotificationModel.d.ts +6 -0
  250. package/lib/shell-components/models/userStoryUpdateNotificationModel.d.ts +6 -0
  251. package/lib/shell-components/models/userstory-custom-fields.model.d.ts +6 -0
  252. package/lib/shell-components/models/validation.model.d.ts +5 -0
  253. package/lib/shell-components/models/widgetlist.d.ts +28 -0
  254. package/lib/shell-components/models/workspaceList.d.ts +19 -0
  255. package/lib/shell-components/services/authentication.service.d.ts +18 -0
  256. package/lib/shell-components/services/chat.service.d.ts +16 -0
  257. package/lib/shell-components/services/common-used.service.d.ts +45 -0
  258. package/lib/shell-components/services/feature.service.d.ts +19 -0
  259. package/lib/shell-components/services/google-analytics.service.d.ts +9 -0
  260. package/lib/shell-components/services/layout.service.d.ts +23 -0
  261. package/lib/shell-components/services/payment.service.d.ts +19 -0
  262. package/lib/shell-components/services/recentSearch.service.d.ts +16 -0
  263. package/lib/shell-components/services/shell.modules.service.d.ts +9 -0
  264. package/lib/shell-components/services/signalr.service.d.ts +25 -0
  265. package/lib/shell-components/services/theme.service.d.ts +14 -0
  266. package/lib/shell-components/shell.module.d.ts +117 -0
  267. package/lib/shell-components/shell.routing.d.ts +2 -0
  268. package/lib/shell-components/store/actions/authentication.actions.d.ts +327 -0
  269. package/lib/shell-components/store/actions/chat.actions.d.ts +399 -0
  270. package/lib/shell-components/store/actions/menuitems.actions.d.ts +51 -0
  271. package/lib/shell-components/store/actions/notification-validator.action.d.ts +25 -0
  272. package/lib/shell-components/store/actions/notifications.actions.d.ts +116 -0
  273. package/lib/shell-components/store/effects/authentication.effects.d.ts +54 -0
  274. package/lib/shell-components/store/effects/chat.effects.d.ts +30 -0
  275. package/lib/shell-components/store/effects/index.d.ts +1 -0
  276. package/lib/shell-components/store/effects/menuitems.effects.d.ts +17 -0
  277. package/lib/shell-components/store/effects/notification-validator.effects.d.ts +21 -0
  278. package/lib/shell-components/store/effects/notifications.effects.d.ts +23 -0
  279. package/lib/shell-components/store/reducers/authentication.reducers.d.ts +30 -0
  280. package/lib/shell-components/store/reducers/chat.reducers.d.ts +17 -0
  281. package/lib/shell-components/store/reducers/index.d.ts +59 -0
  282. package/lib/shell-components/store/reducers/menuitems.reducers.d.ts +11 -0
  283. package/lib/shell-components/store/reducers/notification-validator.reducers.d.ts +5 -0
  284. package/lib/shell-components/store/reducers/notifications.reducers.d.ts +10 -0
  285. package/package.json +22 -0
  286. package/public-api.d.ts +80 -0
  287. package/store/reducers/index.d.ts +24 -0
  288. package/thetradeengineorg1-snova-shell-module.d.ts +5 -0
@@ -0,0 +1,346 @@
1
+ import { Injectable, Pipe } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class SoftLabelPipe {
4
+ transform(searchText, softLabels) {
5
+ let replaceText;
6
+ if (!softLabels || softLabels.length === 0) {
7
+ return searchText;
8
+ }
9
+ if (searchText && searchText.trim()) {
10
+ if (searchText.toLowerCase().match(/(^|\W)project($|\W)/)) {
11
+ replaceText = softLabels[0].projectLabel;
12
+ let re = /project/gi;
13
+ if (replaceText) {
14
+ searchText = searchText.replace(re, replaceText);
15
+ }
16
+ }
17
+ if (searchText.toLowerCase().match(/(^|\W)deadline($|\W)/)) {
18
+ replaceText = softLabels[0].deadlineLabel;
19
+ let re = /deadline/gi;
20
+ if (replaceText) {
21
+ searchText = searchText.replace(re, replaceText);
22
+ }
23
+ }
24
+ if (searchText.toLowerCase().match(/(^|\W)goal($|\W)/)) {
25
+ replaceText = softLabels[0].goalLabel;
26
+ let re = /goal/gi;
27
+ if (replaceText) {
28
+ searchText = searchText.replace(re, replaceText);
29
+ }
30
+ }
31
+ if (searchText.toLowerCase().match(/(^|\W)work item($|\W)/)) {
32
+ replaceText = softLabels[0].userStoryLabel;
33
+ let re = /work item/gi;
34
+ if (replaceText) {
35
+ searchText = searchText.replace(re, replaceText);
36
+ }
37
+ }
38
+ if (searchText.toLowerCase().match(/(^|\W)employee($|\W)/)) {
39
+ replaceText = softLabels[0].employeeLabel;
40
+ let re = /employee/gi;
41
+ if (replaceText) {
42
+ searchText = searchText.replace(re, replaceText);
43
+ }
44
+ }
45
+ if (searchText.toLowerCase().match(/(^|\W)projects($|\W)/)) {
46
+ replaceText = softLabels[0].projectsLabel;
47
+ let re = /projects/gi;
48
+ if (replaceText) {
49
+ searchText = searchText.replace(re, replaceText);
50
+ }
51
+ }
52
+ if (searchText.toLowerCase().match(/(^|\W)deadlines($|\W)/)) {
53
+ replaceText = softLabels[0].deadlinesLabel;
54
+ let re = /deadlines/gi;
55
+ if (replaceText) {
56
+ searchText = searchText.replace(re, replaceText);
57
+ }
58
+ }
59
+ if (searchText.toLowerCase().match(/(^|\W)goals($|\W)/)) {
60
+ replaceText = softLabels[0].goalsLabel;
61
+ let re = /goals/gi;
62
+ if (replaceText) {
63
+ searchText = searchText.replace(re, replaceText);
64
+ }
65
+ }
66
+ if (searchText.toLowerCase().match(/(^|\W)work items($|\W)/)) {
67
+ replaceText = softLabels[0].userStoriesLabel;
68
+ let re = /work items/gi;
69
+ if (replaceText) {
70
+ searchText = searchText.replace(re, replaceText);
71
+ }
72
+ }
73
+ if (searchText.toLowerCase().match(/(^|\W)employees($|\W)/)) {
74
+ replaceText = softLabels[0].employeesLabel;
75
+ let re = /employees/gi;
76
+ if (replaceText) {
77
+ searchText = searchText.replace(re, replaceText);
78
+ }
79
+ }
80
+ if (searchText.toLowerCase().match(/(^|\W)scenario($|\W)/)) {
81
+ replaceText = softLabels[0].scenarioLabel;
82
+ let re = /scenario/gi;
83
+ if (replaceText) {
84
+ searchText = searchText.replace(re, replaceText);
85
+ }
86
+ }
87
+ if (searchText.toLowerCase().match(/(^|\W)test suite($|\W)/)) {
88
+ replaceText = softLabels[0].scenariosLabel;
89
+ let re = /test suite/gi;
90
+ if (replaceText) {
91
+ searchText = searchText.replace(re, replaceText);
92
+ }
93
+ }
94
+ if (searchText.toLowerCase().match(/(^|\W)test suites($|\W)/)) {
95
+ replaceText = softLabels[0].scenarioLabel;
96
+ let re = /test suites/gi;
97
+ if (replaceText) {
98
+ searchText = searchText.replace(re, replaceText);
99
+ }
100
+ }
101
+ if (searchText.toLowerCase().match(/(^|\W)scenarios($|\W)/)) {
102
+ replaceText = softLabels[0].scenariosLabel;
103
+ let re = /scenarios/gi;
104
+ if (replaceText) {
105
+ searchText = searchText.replace(re, replaceText);
106
+ }
107
+ }
108
+ if (searchText.toLowerCase().match(/(^|\W)run($|\W)/)) {
109
+ replaceText = softLabels[0].runLabel;
110
+ let re = /run/gi;
111
+ if (replaceText) {
112
+ searchText = searchText.replace(re, replaceText);
113
+ }
114
+ }
115
+ if (searchText.toLowerCase().match(/(^|\W)runs($|\W)/)) {
116
+ replaceText = softLabels[0].runsLabel;
117
+ let re = /runs/gi;
118
+ if (replaceText) {
119
+ searchText = searchText.replace(re, replaceText);
120
+ }
121
+ }
122
+ if (searchText.toLowerCase().match(/(^|\W)test suite($|\W)/)) {
123
+ replaceText = softLabels[0].runLabel;
124
+ let re = /run/gi;
125
+ if (replaceText) {
126
+ searchText = searchText.replace(re, replaceText);
127
+ }
128
+ }
129
+ if (searchText.toLowerCase().match(/(^|\W)test suites($|\W)/)) {
130
+ replaceText = softLabels[0].runsLabel;
131
+ let re = /runs/gi;
132
+ if (replaceText) {
133
+ searchText = searchText.replace(re, replaceText);
134
+ }
135
+ }
136
+ if (searchText.toLowerCase().match(/(^|\W)version($|\W)/)) {
137
+ replaceText = softLabels[0].versionLabel;
138
+ let re = /version/gi;
139
+ if (replaceText) {
140
+ searchText = searchText.replace(re, replaceText);
141
+ }
142
+ }
143
+ if (searchText.toLowerCase().match(/(^|\W)versions($|\W)/)) {
144
+ replaceText = softLabels[0].versionsLabel;
145
+ let re = /versions/gi;
146
+ if (replaceText) {
147
+ searchText = searchText.replace(re, replaceText);
148
+ }
149
+ }
150
+ if (searchText.toLowerCase().match(/(^|\W)test report($|\W)/)) {
151
+ replaceText = softLabels[0].testReportLabel;
152
+ let re = /test report/gi;
153
+ if (replaceText) {
154
+ searchText = searchText.replace(re, replaceText);
155
+ }
156
+ }
157
+ if (searchText.toLowerCase().match(/(^|\W)test reports($|\W)/)) {
158
+ replaceText = softLabels[0].testReportsLabel;
159
+ let re = /test reports/gi;
160
+ if (replaceText) {
161
+ searchText = searchText.replace(re, replaceText);
162
+ }
163
+ }
164
+ if (searchText.toLowerCase().match(/(^|\W)estimated time($|\W)/)) {
165
+ replaceText = softLabels[0].estimatedTimeLabel;
166
+ let re = /estimated time/gi;
167
+ if (replaceText) {
168
+ searchText = searchText.replace(re, replaceText);
169
+ }
170
+ }
171
+ if (searchText.toLowerCase().match(/(^|\W)estimation($|\W)/)) {
172
+ replaceText = softLabels[0].estimationLabel;
173
+ let re = /estimation/gi;
174
+ if (replaceText) {
175
+ searchText = searchText.replace(re, replaceText);
176
+ }
177
+ }
178
+ if (searchText.toLowerCase().match(/(^|\W)estimations($|\W)/)) {
179
+ replaceText = softLabels[0].estimationsLabel;
180
+ let re = /estimations/gi;
181
+ if (replaceText) {
182
+ searchText = searchText.replace(re, replaceText);
183
+ }
184
+ }
185
+ if (searchText.toLowerCase().match(/(^|\W)estimate($|\W)/)) {
186
+ replaceText = softLabels[0].estimateLabel;
187
+ let re = /estimate/gi;
188
+ if (replaceText) {
189
+ searchText = searchText.replace(re, replaceText);
190
+ }
191
+ }
192
+ if (searchText.toLowerCase().match(/(^|\W)estimates($|\W)/)) {
193
+ replaceText = softLabels[0].estimatesLabel;
194
+ let re = /estimates/gi;
195
+ if (replaceText) {
196
+ searchText = searchText.replace(re, replaceText);
197
+ }
198
+ }
199
+ if (searchText.toLowerCase().match(/(^|\W)audits($|\W)/)) {
200
+ replaceText = softLabels[0].auditsLabel;
201
+ let re = /audits/gi;
202
+ if (replaceText) {
203
+ searchText = searchText.replace(re, replaceText);
204
+ }
205
+ }
206
+ if (searchText.toLowerCase().match(/(^|\W)conduct($|\W)/)) {
207
+ replaceText = softLabels[0].conductLabel;
208
+ let re = /conduct/gi;
209
+ if (replaceText) {
210
+ searchText = searchText.replace(re, replaceText);
211
+ }
212
+ }
213
+ if (searchText.toLowerCase().match(/(^|\W)conducts($|\W)/)) {
214
+ replaceText = softLabels[0].conductsLabel;
215
+ let re = /conducts/gi;
216
+ if (replaceText) {
217
+ searchText = searchText.replace(re, replaceText);
218
+ }
219
+ }
220
+ if (searchText.toLowerCase().match(/(^|\W)action($|\W)/)) {
221
+ replaceText = softLabels[0].actionLabel;
222
+ let re = /action/gi;
223
+ if (replaceText) {
224
+ searchText = searchText.replace(re, replaceText);
225
+ }
226
+ }
227
+ if (searchText.toLowerCase().match(/(^|\W)actions($|\W)/)) {
228
+ replaceText = softLabels[0].actionsLabel;
229
+ let re = /actions/gi;
230
+ if (replaceText) {
231
+ searchText = searchText.replace(re, replaceText);
232
+ }
233
+ }
234
+ if (searchText.toLowerCase().match(/(^|\W)timeline($|\W)/)) {
235
+ replaceText = softLabels[0].timelineLabel;
236
+ let re = /timeline/gi;
237
+ if (replaceText) {
238
+ searchText = searchText.replace(re, replaceText);
239
+ }
240
+ }
241
+ if (searchText.toLowerCase() == "audit report") {
242
+ replaceText = softLabels[0].auditReportLabel;
243
+ let re = /audit report/gi;
244
+ if (replaceText) {
245
+ searchText = searchText.replace(re, replaceText);
246
+ }
247
+ }
248
+ if (searchText.toLowerCase() == "audit reports") {
249
+ replaceText = softLabels[0].auditReportsLabel;
250
+ let re = /audit reports/gi;
251
+ if (replaceText) {
252
+ searchText = searchText.replace(re, replaceText);
253
+ }
254
+ }
255
+ if (searchText.toLowerCase().match(/(^|\W)audit activity($|\W)/)) {
256
+ replaceText = softLabels[0].auditActivityLabel;
257
+ let re = /audit activity/gi;
258
+ if (replaceText) {
259
+ searchText = searchText.replace(re, replaceText);
260
+ }
261
+ }
262
+ if (searchText.toLowerCase().match(/(^|\W)audit analytics($|\W)/)) {
263
+ replaceText = softLabels[0].auditAnalyticsLabel;
264
+ let re = /audit analytics/gi;
265
+ if (replaceText) {
266
+ searchText = searchText.replace(re, replaceText);
267
+ }
268
+ }
269
+ if (searchText.toLowerCase().match(/(^|\W)client($|\W)/)) {
270
+ replaceText = softLabels[0].clientLabel;
271
+ let re = /client/gi;
272
+ if (replaceText) {
273
+ searchText = searchText.replace(re, replaceText);
274
+ }
275
+ }
276
+ if (searchText.toLowerCase().match(/(^|\W)clients($|\W)/)) {
277
+ replaceText = softLabels[0].clientsLabel;
278
+ let re = /clients/gi;
279
+ if (replaceText) {
280
+ searchText = searchText.replace(re, replaceText);
281
+ }
282
+ }
283
+ if (searchText.toLowerCase().match(/(^|\W)question($|\W)/)) {
284
+ replaceText = softLabels[0].auditQuestionLabel;
285
+ let re = /question/gi;
286
+ if (replaceText) {
287
+ searchText = searchText.replace(re, replaceText);
288
+ }
289
+ }
290
+ if (searchText.toLowerCase().match(/(^|\W)questions($|\W)/)) {
291
+ replaceText = softLabels[0].auditQuestionsLabel;
292
+ let re = /questions/gi;
293
+ if (replaceText) {
294
+ searchText = searchText.replace(re, replaceText);
295
+ }
296
+ }
297
+ if (searchText.toLowerCase().match(/(^|\W)report($|\W)/) && searchText.toLowerCase() != "audit report" && searchText.toLowerCase() != "audit reports") {
298
+ replaceText = softLabels[0].reportLabel;
299
+ let re = /report/gi;
300
+ if (replaceText) {
301
+ searchText = searchText.replace(re, replaceText);
302
+ }
303
+ }
304
+ if (searchText.toLowerCase().match(/(^|\W)reports($|\W)/) && searchText.toLowerCase() != "audit report" && searchText.toLowerCase() != "audit reports") {
305
+ replaceText = softLabels[0].reportsLabel;
306
+ let re = /reports/gi;
307
+ if (replaceText) {
308
+ searchText = searchText.replace(re, replaceText);
309
+ }
310
+ }
311
+ if (searchText.toLowerCase().match(/(^|\W)audit($|\W)/) && searchText.toLowerCase() != "audit report" && searchText.toLowerCase() != "audit reports") {
312
+ replaceText = softLabels[0].auditLabel;
313
+ let re = /audit/gi;
314
+ if (replaceText) {
315
+ searchText = searchText.replace(re, replaceText);
316
+ }
317
+ }
318
+ if (!searchText.includes('estimated time')) {
319
+ let searchString = searchText.split('.');
320
+ let str = "";
321
+ searchString.forEach(function (item) {
322
+ if (item.trim() != "") {
323
+ if (item != "HR" && !item.includes('h'))
324
+ item = item.trim().charAt(0).toUpperCase() + item.trim().substr(1).toLowerCase();
325
+ str = str != "" ? (str + ". " + item + ".") : item;
326
+ }
327
+ });
328
+ searchText = str;
329
+ }
330
+ }
331
+ return searchText;
332
+ }
333
+ }
334
+ SoftLabelPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: SoftLabelPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
335
+ SoftLabelPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: SoftLabelPipe, name: "softLabelsPipe" });
336
+ SoftLabelPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: SoftLabelPipe, providedIn: 'root' });
337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: SoftLabelPipe, decorators: [{
338
+ type: Pipe,
339
+ args: [{
340
+ name: "softLabelsPipe"
341
+ }]
342
+ }, {
343
+ type: Injectable,
344
+ args: [{ providedIn: 'root' }]
345
+ }] });
346
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdGxhYmVscy5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NoZWxsLW1vZHVsZS1jb21wb25lbnRzL3NoZWxsLWNvbXBvbmVudHMvc3JjL2xpYi9nbG9iYWxkZXBlbmRlbmNpZXMvcGlwZXMvc29mdGxhYmVscy5waXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTWhFLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFNBQVMsQ0FBQyxVQUFrQixFQUFFLFVBQWlCO1FBQzdDLElBQUksV0FBVyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDMUMsT0FBTyxVQUFVLENBQUM7U0FDbkI7UUFDRCxJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDbkMsSUFBSSxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLEVBQUU7Z0JBQ3pELFdBQVcsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO2dCQUN6QyxJQUFJLEVBQUUsR0FBRyxXQUFXLENBQUM7Z0JBQ3JCLElBQUksV0FBVyxFQUFFO29CQUNmLFVBQVUsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQztpQkFDbEQ7YUFDRjtZQUNELElBQUksVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxRCxXQUFXLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztnQkFDMUMsSUFBSSxFQUFFLEdBQUcsWUFBWSxDQUFDO2dCQUN0QixJQUFJLFdBQVcsRUFBRTtvQkFDZixVQUFVLEdBQUcsVUFBVSxDQUFDLE9B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QVcsRUFBRSxDQUFDO3dCQUNuRixHQUFHLEdBQUcsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxHQUFHLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO3FCQUNwRDtnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFFSCxVQUFVLEdBQUcsR0FBRyxDQUFDO2FBQ2xCO1NBQ0Y7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDOzswR0E3VVUsYUFBYTt3R0FBYixhQUFhOzhHQUFiLGFBQWEsY0FEQSxNQUFNOzJGQUNuQixhQUFhO2tCQUp6QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxnQkFBZ0I7aUJBQ3ZCOztrQkFDQSxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gXCJ1bmRlcnNjb3JlXCI7XHJcbkBQaXBlKHtcclxuICBuYW1lOiBcInNvZnRMYWJlbHNQaXBlXCJcclxufSlcclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFNvZnRMYWJlbFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0oc2VhcmNoVGV4dDogc3RyaW5nLCBzb2Z0TGFiZWxzOiBhbnlbXSk6IHN0cmluZyB7XHJcbiAgICBsZXQgcmVwbGFjZVRleHQ7XHJcbiAgICBpZiAoIXNvZnRMYWJlbHMgfHwgc29mdExhYmVscy5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIHNlYXJjaFRleHQ7XHJcbiAgICB9XHJcbiAgICBpZiAoc2VhcmNoVGV4dCAmJiBzZWFyY2hUZXh0LnRyaW0oKSkge1xyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpcHJvamVjdCgkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5wcm9qZWN0TGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3Byb2plY3QvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylkZWFkbGluZSgkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5kZWFkbGluZUxhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9kZWFkbGluZS9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWdvYWwoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uZ29hbExhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9nb2FsL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpd29yayBpdGVtKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnVzZXJTdG9yeUxhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC93b3JrIGl0ZW0vZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyllbXBsb3llZSgkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5lbXBsb3llZUxhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9lbXBsb3llZS9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXByb2plY3RzKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnByb2plY3RzTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3Byb2plY3RzL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpZGVhZGxpbmVzKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLmRlYWRsaW5lc0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9kZWFkbGluZXMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylnb2FscygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5nb2Fsc0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9nb2Fscy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXdvcmsgaXRlbXMoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0udXNlclN0b3JpZXNMYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvd29yayBpdGVtcy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWVtcGxveWVlcygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5lbXBsb3llZXNMYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvZW1wbG95ZWVzL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpc2NlbmFyaW8oJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uc2NlbmFyaW9MYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvc2NlbmFyaW8vZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyl0ZXN0IHN1aXRlKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnNjZW5hcmlvc0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC90ZXN0IHN1aXRlL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpdGVzdCBzdWl0ZXMoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uc2NlbmFyaW9MYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvdGVzdCBzdWl0ZXMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylzY2VuYXJpb3MoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uc2NlbmFyaW9zTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3NjZW5hcmlvcy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXJ1bigkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5ydW5MYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvcnVuL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpcnVucygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5ydW5zTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3J1bnMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyl0ZXN0IHN1aXRlKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnJ1bkxhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9ydW4vZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyl0ZXN0IHN1aXRlcygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5ydW5zTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3J1bnMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyl2ZXJzaW9uKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnZlcnNpb25MYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvdmVyc2lvbi9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXZlcnNpb25zKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnZlcnNpb25zTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3ZlcnNpb25zL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpdGVzdCByZXBvcnQoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0udGVzdFJlcG9ydExhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC90ZXN0IHJlcG9ydC9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXRlc3QgcmVwb3J0cygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS50ZXN0UmVwb3J0c0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC90ZXN0IHJlcG9ydHMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyllc3RpbWF0ZWQgdGltZSgkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5lc3RpbWF0ZWRUaW1lTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2VzdGltYXRlZCB0aW1lL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpZXN0aW1hdGlvbigkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5lc3RpbWF0aW9uTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2VzdGltYXRpb24vZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVyllc3RpbWF0aW9ucygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5lc3RpbWF0aW9uc0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9lc3RpbWF0aW9ucy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWVzdGltYXRlKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLmVzdGltYXRlTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2VzdGltYXRlL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpZXN0aW1hdGVzKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLmVzdGltYXRlc0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9lc3RpbWF0ZXMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylhdWRpdHMoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uYXVkaXRzTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2F1ZGl0cy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWNvbmR1Y3QoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uY29uZHVjdExhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9jb25kdWN0L2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpY29uZHVjdHMoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uY29uZHVjdHNMYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvY29uZHVjdHMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylhY3Rpb24oJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uYWN0aW9uTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2FjdGlvbi9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWFjdGlvbnMoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uYWN0aW9uc0xhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9hY3Rpb25zL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpdGltZWxpbmUoJHxcXFcpLykpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0udGltZWxpbmVMYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvdGltZWxpbmUvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkgPT0gXCJhdWRpdCByZXBvcnRcIikge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5hdWRpdFJlcG9ydExhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9hdWRpdCByZXBvcnQvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkgPT0gXCJhdWRpdCByZXBvcnRzXCIpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0uYXVkaXRSZXBvcnRzTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2F1ZGl0IHJlcG9ydHMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylhdWRpdCBhY3Rpdml0eSgkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5hdWRpdEFjdGl2aXR5TGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2F1ZGl0IGFjdGl2aXR5L2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpYXVkaXQgYW5hbHl0aWNzKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLmF1ZGl0QW5hbHl0aWNzTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2F1ZGl0IGFuYWx5dGljcy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWNsaWVudCgkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5jbGllbnRMYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvY2xpZW50L2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpY2xpZW50cygkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5jbGllbnRzTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL2NsaWVudHMvZ2k7XHJcbiAgICAgICAgaWYgKHJlcGxhY2VUZXh0KSB7XHJcbiAgICAgICAgICBzZWFyY2hUZXh0ID0gc2VhcmNoVGV4dC5yZXBsYWNlKHJlLCByZXBsYWNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhefFxcVylxdWVzdGlvbigkfFxcVykvKSkge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5hdWRpdFF1ZXN0aW9uTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3F1ZXN0aW9uL2dpO1xyXG4gICAgICAgIGlmIChyZXBsYWNlVGV4dCkge1xyXG4gICAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQucmVwbGFjZShyZSwgcmVwbGFjZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpLm1hdGNoKC8oXnxcXFcpcXVlc3Rpb25zKCR8XFxXKS8pKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLmF1ZGl0UXVlc3Rpb25zTGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3F1ZXN0aW9ucy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXJlcG9ydCgkfFxcVykvKSAmJiBzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkgIT0gXCJhdWRpdCByZXBvcnRcIiAmJiBzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkgIT0gXCJhdWRpdCByZXBvcnRzXCIpIHtcclxuICAgICAgICByZXBsYWNlVGV4dCA9IHNvZnRMYWJlbHNbMF0ucmVwb3J0TGFiZWw7XHJcbiAgICAgICAgbGV0IHJlID0gL3JlcG9ydC9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKXJlcG9ydHMoJHxcXFcpLykgJiYgc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpICE9IFwiYXVkaXQgcmVwb3J0XCIgJiYgc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpICE9IFwiYXVkaXQgcmVwb3J0c1wiKSB7XHJcbiAgICAgICAgcmVwbGFjZVRleHQgPSBzb2Z0TGFiZWxzWzBdLnJlcG9ydHNMYWJlbDtcclxuICAgICAgICBsZXQgcmUgPSAvcmVwb3J0cy9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKF58XFxXKWF1ZGl0KCR8XFxXKS8pICYmIHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKSAhPSBcImF1ZGl0IHJlcG9ydFwiICYmIHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKSAhPSBcImF1ZGl0IHJlcG9ydHNcIikge1xyXG4gICAgICAgIHJlcGxhY2VUZXh0ID0gc29mdExhYmVsc1swXS5hdWRpdExhYmVsO1xyXG4gICAgICAgIGxldCByZSA9IC9hdWRpdC9naTtcclxuICAgICAgICBpZiAocmVwbGFjZVRleHQpIHtcclxuICAgICAgICAgIHNlYXJjaFRleHQgPSBzZWFyY2hUZXh0LnJlcGxhY2UocmUsIHJlcGxhY2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCFzZWFyY2hUZXh0LmluY2x1ZGVzKCdlc3RpbWF0ZWQgdGltZScpKSB7XHJcbiAgICAgICAgbGV0IHNlYXJjaFN0cmluZyA9IHNlYXJjaFRleHQuc3BsaXQoJy4nKTtcclxuICAgICAgICBsZXQgc3RyID0gXCJcIjtcclxuXHJcbiAgICAgICAgc2VhcmNoU3RyaW5nLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHtcclxuXHJcbiAgICAgICAgICBpZiAoaXRlbS50cmltKCkgIT0gXCJcIikge1xyXG4gICAgICAgICAgICBpZiAoaXRlbSAhPSBcIkhSXCIgJiYgIWl0ZW0uaW5jbHVkZXMoJ2gnKSlcclxuICAgICAgICAgICAgICBpdGVtID0gaXRlbS50cmltKCkuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBpdGVtLnRyaW0oKS5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKTtcclxuICAgICAgICAgICAgc3RyID0gc3RyICE9IFwiXCIgPyAoc3RyICsgXCIuIFwiICsgaXRlbSArIFwiLlwiKSA6IGl0ZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHNlYXJjaFRleHQgPSBzdHI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gc2VhcmNoVGV4dDtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,23 @@
1
+ import { Pipe, Injectable } from '@angular/core';
2
+ import * as moment from "moment";
3
+ import * as i0 from "@angular/core";
4
+ export class UtcToLocalTimePipe {
5
+ transform(utcDate) {
6
+ if (!utcDate) {
7
+ return null;
8
+ }
9
+ const localDate = moment.utc(utcDate).local().format();
10
+ return localDate;
11
+ }
12
+ }
13
+ UtcToLocalTimePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
14
+ UtcToLocalTimePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimePipe, name: "utcToLocalTime" });
15
+ UtcToLocalTimePipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimePipe, providedIn: 'root' });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimePipe, decorators: [{
17
+ type: Pipe,
18
+ args: [{ name: 'utcToLocalTime' }]
19
+ }, {
20
+ type: Injectable,
21
+ args: [{ providedIn: 'root' }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRjdG9sb2NhbHRpbWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NoZWxsLW1vZHVsZS1jb21wb25lbnRzL3NoZWxsLWNvbXBvbmVudHMvc3JjL2xpYi9nbG9iYWxkZXBlbmRlbmNpZXMvcGlwZXMvdXRjdG9sb2NhbHRpbWUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7O0FBTWpDLE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsU0FBUyxDQUFDLE9BQVk7UUFDbEIsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNWLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7OytHQVJRLGtCQUFrQjs2R0FBbEIsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGTCxNQUFNOzJGQUVuQixrQkFBa0I7a0JBSjlCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7O2tCQUUvQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0sIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcclxuXHJcbkBQaXBlKHsgbmFtZTogJ3V0Y1RvTG9jYWxUaW1lJyB9KVxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuXHJcbmV4cG9ydCBjbGFzcyBVdGNUb0xvY2FsVGltZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHRyYW5zZm9ybSh1dGNEYXRlOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghdXRjRGF0ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgY29uc3QgbG9jYWxEYXRlID0gbW9tZW50LnV0Yyh1dGNEYXRlKS5sb2NhbCgpLmZvcm1hdCgpO1xyXG4gICAgICAgIHJldHVybiBsb2NhbERhdGU7XHJcbiAgICB9XHJcbn0iXX0=
@@ -0,0 +1,25 @@
1
+ import { Pipe, Injectable } from '@angular/core';
2
+ import * as moment from "moment";
3
+ import * as i0 from "@angular/core";
4
+ export class UtcToLocalTimeWithDatePipe {
5
+ transform(utcDate) {
6
+ if (!utcDate) {
7
+ return null;
8
+ }
9
+ var temp = '2019-10-11T';
10
+ var date = temp.toString().concat(utcDate);
11
+ const localDate = moment.utc(date).local().format();
12
+ return localDate;
13
+ }
14
+ }
15
+ UtcToLocalTimeWithDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimeWithDatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
16
+ UtcToLocalTimeWithDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimeWithDatePipe, name: "utcToLocalTimeWithDate" });
17
+ UtcToLocalTimeWithDatePipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimeWithDatePipe, providedIn: 'root' });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: UtcToLocalTimeWithDatePipe, decorators: [{
19
+ type: Pipe,
20
+ args: [{ name: 'utcToLocalTimeWithDate' }]
21
+ }, {
22
+ type: Injectable,
23
+ args: [{ providedIn: 'root' }]
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRjdG9sb2NhbHRpbWV3aXRoZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc2hlbGwtbW9kdWxlLWNvbXBvbmVudHMvc2hlbGwtY29tcG9uZW50cy9zcmMvbGliL2dsb2JhbGRlcGVuZGVuY2llcy9waXBlcy91dGN0b2xvY2FsdGltZXdpdGhkYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDOztBQU1qQyxNQUFNLE9BQU8sMEJBQTBCO0lBQ25DLFNBQVMsQ0FBQyxPQUFlO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxJQUFJLEdBQUcsYUFBYSxDQUFDO1FBQ3pCLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDOzt1SEFWUSwwQkFBMEI7cUhBQTFCLDBCQUEwQjsySEFBMUIsMEJBQTBCLGNBRmIsTUFBTTsyRkFFbkIsMEJBQTBCO2tCQUp0QyxJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFOztrQkFFdkMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tIFwibW9tZW50XCI7XHJcblxyXG5AUGlwZSh7IG5hbWU6ICd1dGNUb0xvY2FsVGltZVdpdGhEYXRlJyB9KVxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuXHJcbmV4cG9ydCBjbGFzcyBVdGNUb0xvY2FsVGltZVdpdGhEYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgdHJhbnNmb3JtKHV0Y0RhdGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKCF1dGNEYXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdmFyIHRlbXAgPSAnMjAxOS0xMC0xMVQnO1xyXG4gICAgICAgIHZhciBkYXRlID0gdGVtcC50b1N0cmluZygpLmNvbmNhdCh1dGNEYXRlKTtcclxuICAgICAgICBjb25zdCBsb2NhbERhdGUgPSBtb21lbnQudXRjKGRhdGUpLmxvY2FsKCkuZm9ybWF0KCk7XHJcbiAgICAgICAgcmV0dXJuIGxvY2FsRGF0ZTtcclxuICAgIH1cclxufSJdfQ==
@@ -0,0 +1,27 @@
1
+ import { Injectable, Pipe } from "@angular/core";
2
+ import * as _ from "underscore";
3
+ import * as i0 from "@angular/core";
4
+ export class WorkflowStatusFilterPipe {
5
+ transform(workflowStatus, field, workflowStatusId) {
6
+ if (!workflowStatusId) {
7
+ return workflowStatus;
8
+ }
9
+ else {
10
+ var workflowStatus = _.filter(workflowStatus, function (s) {
11
+ return !workflowStatusId.includes(s.userStoryStatusId);
12
+ });
13
+ return workflowStatus;
14
+ }
15
+ }
16
+ }
17
+ WorkflowStatusFilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: WorkflowStatusFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
18
+ WorkflowStatusFilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: WorkflowStatusFilterPipe, name: "workflowStatusFilter" });
19
+ WorkflowStatusFilterPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: WorkflowStatusFilterPipe, providedIn: 'root' });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: WorkflowStatusFilterPipe, decorators: [{
21
+ type: Pipe,
22
+ args: [{ name: "workflowStatusFilter" }]
23
+ }, {
24
+ type: Injectable,
25
+ args: [{ providedIn: 'root' }]
26
+ }] });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3dzdGF0dXMucGlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zaGVsbC1tb2R1bGUtY29tcG9uZW50cy9zaGVsbC1jb21wb25lbnRzL3NyYy9saWIvZ2xvYmFsZGVwZW5kZW5jaWVzL3BpcGVzL3dvcmtmbG93c3RhdHVzLnBpcGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEtBQUssQ0FBQyxNQUFNLFlBQVksQ0FBQzs7QUFNaEMsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQyxTQUFTLENBQUMsY0FBcUIsRUFBRSxLQUFhLEVBQUUsZ0JBQXdCO1FBRXRFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNyQixPQUFPLGNBQWMsQ0FBQztTQUN2QjthQUNJO1lBRUgsSUFBSSxjQUFjLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDO2dCQUV2RCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3pELENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxjQUFjLENBQUM7U0FDdkI7SUFFSCxDQUFDOztxSEFmVSx3QkFBd0I7bUhBQXhCLHdCQUF3Qjt5SEFBeEIsd0JBQXdCLGNBRlgsTUFBTTsyRkFFbkIsd0JBQXdCO2tCQUpwQyxJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixFQUFFOztrQkFFckMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0ICogYXMgXyBmcm9tIFwidW5kZXJzY29yZVwiO1xyXG5cclxuQFBpcGUoeyBuYW1lOiBcIndvcmtmbG93U3RhdHVzRmlsdGVyXCIgfSlcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcblxyXG5leHBvcnQgY2xhc3MgV29ya2Zsb3dTdGF0dXNGaWx0ZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKHdvcmtmbG93U3RhdHVzOiBhbnlbXSwgZmllbGQ6IHN0cmluZywgd29ya2Zsb3dTdGF0dXNJZDogc3RyaW5nKTogYW55W10ge1xyXG5cclxuICAgIGlmICghd29ya2Zsb3dTdGF0dXNJZCkge1xyXG4gICAgICByZXR1cm4gd29ya2Zsb3dTdGF0dXM7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuXHJcbiAgICAgIHZhciB3b3JrZmxvd1N0YXR1cyA9IF8uZmlsdGVyKHdvcmtmbG93U3RhdHVzLCBmdW5jdGlvbiAocykge1xyXG5cclxuICAgICAgICByZXR1cm4gIXdvcmtmbG93U3RhdHVzSWQuaW5jbHVkZXMocy51c2VyU3RvcnlTdGF0dXNJZCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gd29ya2Zsb3dTdGF0dXM7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufSJdfQ==
@@ -0,0 +1,50 @@
1
+ import { Component, Inject } from "@angular/core";
2
+ import { MAT_DIALOG_DATA } from "@angular/material/dialog";
3
+ import '../../../globaldependencies/helpers/fontawesome-icons';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/tabs";
6
+ import * as i2 from "./product-service.component";
7
+ import * as i3 from "./company-information";
8
+ import * as i4 from "./transactions.component";
9
+ import * as i5 from "./document.component";
10
+ import * as i6 from "@angular/flex-layout/flex";
11
+ import * as i7 from "@angular/common";
12
+ export class AccountAndBillingComponent {
13
+ constructor(data) {
14
+ this.data = data;
15
+ }
16
+ ngOnInit() {
17
+ this.selectedTabIndex = 1;
18
+ this.selectedTab = "Products & Services";
19
+ }
20
+ onTabClick(event) {
21
+ if (event.tab.textLabel.includes("Products & Services")) {
22
+ this.selectedTab = "Products & Services";
23
+ }
24
+ else if (event.tab.textLabel.includes("Company Info")) {
25
+ this.selectedTab = "Company Info";
26
+ }
27
+ else if (event.tab.textLabel.includes("Transactions")) {
28
+ this.selectedTab = "Transactions";
29
+ }
30
+ else if (event.tab.textLabel.includes("Documents")) {
31
+ this.selectedTab = "Documents";
32
+ }
33
+ else if (event.tab.textLabel.includes("Payment Method")) {
34
+ this.selectedTab = "Payment Method";
35
+ }
36
+ }
37
+ }
38
+ AccountAndBillingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: AccountAndBillingComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
39
+ AccountAndBillingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.1", type: AccountAndBillingComponent, selector: "app-account.component", ngImport: i0, template: "<div fxLayout=\"row wrap\">\r\n <div class=\"p-02 full-width project-statuslist projectStatus-page projectStatus-page-header\" fxLayout=\"row wrap\">\r\n <div fxFlex>\r\n <mat-tab-group class=\"projectStatus-tabs project-tabs-container\" [selectedIndex]=\"selectedTabIndex\"\r\n (selectedTabChange)=\"onTabClick($event)\" [@.disabled]=\"true\">\r\n <mat-tab label=\"empty\">\r\n </mat-tab>\r\n <mat-tab label=\"Products & Services\">\r\n <ng-template mat-tab-label>\r\n Products & Services\r\n </ng-template>\r\n </mat-tab>\r\n <mat-tab label=\"Company Info\">\r\n <ng-template mat-tab-label>\r\n Company Info\r\n </ng-template>\r\n </mat-tab>\r\n <mat-tab label=\"Transactions\">\r\n <ng-template mat-tab-label>\r\n Transactions\r\n </ng-template>\r\n </mat-tab>\r\n <mat-tab label=\"Documents\">\r\n <ng-template mat-tab-label>\r\n Documents\r\n </ng-template>\r\n </mat-tab>\r\n <!-- <mat-tab label=\"Payment Method\">\r\n <ng-template mat-tab-label>\r\n Payment Method\r\n </ng-template>\r\n </mat-tab> -->\r\n </mat-tab-group>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"selectedTab == 'Products & Services'\">\r\n <app-product-services-component fxLayout=\"column\"></app-product-services-component>\r\n</div>\r\n<div *ngIf=\"selectedTab == 'Company Info'\">\r\n <app-company-information-component fxLayout=\"column\"></app-company-information-component>\r\n</div>\r\n<div *ngIf=\"selectedTab == 'Transactions'\">\r\n <app-transactions-component></app-transactions-component>\r\n</div>\r\n<div *ngIf=\"selectedTab == 'Documents'\">\r\n <app-document-component fxLayout=\"column\"></app-document-component>\r\n</div>\r\n<!-- <div *ngIf=\"selectedTab == 'Payment Method'\">\r\n <app-payment-method-component></app-payment-method-component>\r\n</div> -->", components: [{ type: i1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { type: i1.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby"], exportAs: ["matTab"] }, { type: i2.ProductAndServicesComponent, selector: "app-product-services-component" }, { type: i3.CompanyInformationComponent, selector: "app-company-information-component" }, { type: i4.TransactionsComponent, selector: "app-transactions-component" }, { type: i5.DocumentComponent, selector: "app-document-component" }], directives: [{ type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i6.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: i1.MatTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.1", ngImport: i0, type: AccountAndBillingComponent, decorators: [{
41
+ type: Component,
42
+ args: [{
43
+ selector: "app-account.component",
44
+ templateUrl: "./account.component.html"
45
+ }]
46
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
47
+ type: Inject,
48
+ args: [MAT_DIALOG_DATA]
49
+ }] }]; } });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zaGVsbC1tb2R1bGUtY29tcG9uZW50cy9zaGVsbC1jb21wb25lbnRzL3NyYy9saWIvc2hlbGwtY29tcG9uZW50cy9jb21wb25lbnRzL1BheW1lbnRzL2FjY291bnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc2hlbGwtbW9kdWxlLWNvbXBvbmVudHMvc2hlbGwtY29tcG9uZW50cy9zcmMvbGliL3NoZWxsLWNvbXBvbmVudHMvY29tcG9uZW50cy9QYXltZW50cy9hY2NvdW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBMkIsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHcEYsT0FBTyx1REFBdUQsQ0FBQzs7Ozs7Ozs7O0FBTy9ELE1BQU0sT0FBTywwQkFBMEI7SUFLckMsWUFBNEMsSUFBUztRQUFULFNBQUksR0FBSixJQUFJLENBQUs7SUFFckQsQ0FBQztJQUVELFFBQVE7UUFFTixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcscUJBQXFCLENBQUM7SUFDM0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUF3QjtRQUNqQyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFO1lBQ3ZELElBQUksQ0FBQyxXQUFXLEdBQUcscUJBQXFCLENBQUM7U0FDMUM7YUFDSSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNyRCxJQUFJLENBQUMsV0FBVyxHQUFHLGNBQWMsQ0FBQztTQUNuQzthQUNJLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDO1NBQ25DO2FBQ0ksSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7U0FDaEM7YUFDSSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQ3ZELElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7U0FDckM7SUFFSCxDQUFDOzt1SEFoQ1UsMEJBQTBCLGtCQUtqQixlQUFlOzJHQUx4QiwwQkFBMEIsNkRDWHZDLHF4RUFtRFc7MkZEeENFLDBCQUEwQjtrQkFMdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsMEJBQTBCO2lCQUN4Qzs7MEJBT2MsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHsgTWF0T3B0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcclxuaW1wb3J0IHsgTWF0VGFiQ2hhbmdlRXZlbnQgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdGFic1wiO1xyXG5pbXBvcnQgJy4uLy4uLy4uL2dsb2JhbGRlcGVuZGVuY2llcy9oZWxwZXJzL2ZvbnRhd2Vzb21lLWljb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFwcC1hY2NvdW50LmNvbXBvbmVudFwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vYWNjb3VudC5jb21wb25lbnQuaHRtbFwiXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQWNjb3VudEFuZEJpbGxpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuXHJcbiAgc2VsZWN0ZWRUYWI6IHN0cmluZztcclxuICBzZWxlY3RlZFRhYkluZGV4OiBudW1iZXI7XHJcbiAgY29uc3RydWN0b3IoQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnkpIHtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgIFxyXG4gICAgdGhpcy5zZWxlY3RlZFRhYkluZGV4ID0gMTtcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcIlByb2R1Y3RzICYgU2VydmljZXNcIjtcclxuICB9XHJcblxyXG4gIG9uVGFiQ2xpY2soZXZlbnQ6IE1hdFRhYkNoYW5nZUV2ZW50KSB7XHJcbiAgICBpZiAoZXZlbnQudGFiLnRleHRMYWJlbC5pbmNsdWRlcyhcIlByb2R1Y3RzICYgU2VydmljZXNcIikpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiUHJvZHVjdHMgJiBTZXJ2aWNlc1wiO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZXZlbnQudGFiLnRleHRMYWJlbC5pbmNsdWRlcyhcIkNvbXBhbnkgSW5mb1wiKSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFiID0gXCJDb21wYW55IEluZm9cIjtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGV2ZW50LnRhYi50ZXh0TGFiZWwuaW5jbHVkZXMoXCJUcmFuc2FjdGlvbnNcIikpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiVHJhbnNhY3Rpb25zXCI7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChldmVudC50YWIudGV4dExhYmVsLmluY2x1ZGVzKFwiRG9jdW1lbnRzXCIpKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcIkRvY3VtZW50c1wiO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZXZlbnQudGFiLnRleHRMYWJlbC5pbmNsdWRlcyhcIlBheW1lbnQgTWV0aG9kXCIpKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcIlBheW1lbnQgTWV0aG9kXCI7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBmeExheW91dD1cInJvdyB3cmFwXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC0wMiBmdWxsLXdpZHRoIHByb2plY3Qtc3RhdHVzbGlzdCBwcm9qZWN0U3RhdHVzLXBhZ2UgcHJvamVjdFN0YXR1cy1wYWdlLWhlYWRlclwiIGZ4TGF5b3V0PVwicm93IHdyYXBcIj5cclxuICAgICAgICA8ZGl2IGZ4RmxleD5cclxuICAgICAgICAgICAgPG1hdC10YWItZ3JvdXAgY2xhc3M9XCJwcm9qZWN0U3RhdHVzLXRhYnMgcHJvamVjdC10YWJzLWNvbnRhaW5lclwiIFtzZWxlY3RlZEluZGV4XT1cInNlbGVjdGVkVGFiSW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgKHNlbGVjdGVkVGFiQ2hhbmdlKT1cIm9uVGFiQ2xpY2soJGV2ZW50KVwiIFtALmRpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtdGFiIGxhYmVsPVwiZW1wdHlcIj5cclxuICAgICAgICAgICAgICAgIDwvbWF0LXRhYj5cclxuICAgICAgICAgICAgICAgIDxtYXQtdGFiIGxhYmVsPVwiUHJvZHVjdHMgJiBTZXJ2aWNlc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXQtdGFiLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm9kdWN0cyAmIFNlcnZpY2VzXHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvbWF0LXRhYj5cclxuICAgICAgICAgICAgICAgIDxtYXQtdGFiIGxhYmVsPVwiQ29tcGFueSBJbmZvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIG1hdC10YWItbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIENvbXBhbnkgSW5mb1xyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L21hdC10YWI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LXRhYiBsYWJlbD1cIlRyYW5zYWN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXQtdGFiLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2FjdGlvbnNcclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtdGFiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJEb2N1bWVudHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbWF0LXRhYi1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRG9jdW1lbnRzXHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvbWF0LXRhYj5cclxuICAgICAgICAgICAgICAgIDwhLS0gPG1hdC10YWIgbGFiZWw9XCJQYXltZW50IE1ldGhvZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXQtdGFiLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBQYXltZW50IE1ldGhvZFxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L21hdC10YWI+IC0tPlxyXG4gICAgICAgICAgICA8L21hdC10YWItZ3JvdXA+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT0gJ1Byb2R1Y3RzICYgU2VydmljZXMnXCI+XHJcbiAgICA8YXBwLXByb2R1Y3Qtc2VydmljZXMtY29tcG9uZW50IGZ4TGF5b3V0PVwiY29sdW1uXCI+PC9hcHAtcHJvZHVjdC1zZXJ2aWNlcy1jb21wb25lbnQ+XHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT0gJ0NvbXBhbnkgSW5mbydcIj5cclxuICAgIDxhcHAtY29tcGFueS1pbmZvcm1hdGlvbi1jb21wb25lbnQgZnhMYXlvdXQ9XCJjb2x1bW5cIj48L2FwcC1jb21wYW55LWluZm9ybWF0aW9uLWNvbXBvbmVudD5cclxuPC9kaXY+XHJcbjxkaXYgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PSAnVHJhbnNhY3Rpb25zJ1wiPlxyXG4gICAgPGFwcC10cmFuc2FjdGlvbnMtY29tcG9uZW50PjwvYXBwLXRyYW5zYWN0aW9ucy1jb21wb25lbnQ+XHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT0gJ0RvY3VtZW50cydcIj5cclxuICAgIDxhcHAtZG9jdW1lbnQtY29tcG9uZW50IGZ4TGF5b3V0PVwiY29sdW1uXCI+PC9hcHAtZG9jdW1lbnQtY29tcG9uZW50PlxyXG48L2Rpdj5cclxuPCEtLSA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT0gJ1BheW1lbnQgTWV0aG9kJ1wiPlxyXG4gICAgPGFwcC1wYXltZW50LW1ldGhvZC1jb21wb25lbnQ+PC9hcHAtcGF5bWVudC1tZXRob2QtY29tcG9uZW50PlxyXG48L2Rpdj4gIC0tPiJdfQ==