@sunbird-cb/utils-v2 0.0.0-watch

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 (210) hide show
  1. package/README.md +24 -0
  2. package/esm2022/lib/components/image-crop/image-crop.component.mjs +172 -0
  3. package/esm2022/lib/components/image-crop/image-crop.module.mjs +55 -0
  4. package/esm2022/lib/constants/features.enum.mjs +555 -0
  5. package/esm2022/lib/constants/instances.enum.mjs +5 -0
  6. package/esm2022/lib/constants/misc.constants.mjs +2 -0
  7. package/esm2022/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.mjs +87 -0
  8. package/esm2022/lib/directives/class-change-on-scroll/class-change-on-scroll.module.mjs +20 -0
  9. package/esm2022/lib/directives/default-thumbnail/default-thumbnail.directive.mjs +40 -0
  10. package/esm2022/lib/directives/default-thumbnail/default-thumbnail.module.mjs +20 -0
  11. package/esm2022/lib/directives/image-responsive/image-responsive.directive.mjs +86 -0
  12. package/esm2022/lib/directives/image-responsive/image-responsive.module.mjs +20 -0
  13. package/esm2022/lib/directives/in-view-port/in-view-port.directive.mjs +62 -0
  14. package/esm2022/lib/directives/in-view-port/in-view-port.module.mjs +20 -0
  15. package/esm2022/lib/directives/navigation/navigation.directive.mjs +43 -0
  16. package/esm2022/lib/directives/navigation/navigation.module.mjs +20 -0
  17. package/esm2022/lib/directives/permission/permission.directive.mjs +14 -0
  18. package/esm2022/lib/directives/permission/permission.module.mjs +20 -0
  19. package/esm2022/lib/helpers/functions/getStringifiedQueryParams.mjs +9 -0
  20. package/esm2022/lib/helpers/horizontal-scroller/horizontal-scroller.component.mjs +96 -0
  21. package/esm2022/lib/helpers/horizontal-scroller/horizontal-scroller.module.mjs +32 -0
  22. package/esm2022/lib/helpers/horizontal-scroller-v2/horizontal-scroller-v2.component.mjs +186 -0
  23. package/esm2022/lib/helpers/horizontal-scroller-v2/horizontal-scroller-v2.module.mjs +32 -0
  24. package/esm2022/lib/helpers/logout/logout.component.mjs +78 -0
  25. package/esm2022/lib/helpers/logout/logout.module.mjs +31 -0
  26. package/esm2022/lib/models/profile-v3.models.mjs +2 -0
  27. package/esm2022/lib/pipes/pipe-certificate-image-URL/pipe-certimage-URL.module.mjs +20 -0
  28. package/esm2022/lib/pipes/pipe-certificate-image-URL/pipe-certimage-URL.pipe.mjs +117 -0
  29. package/esm2022/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.mjs +18 -0
  30. package/esm2022/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.mjs +57 -0
  31. package/esm2022/lib/pipes/pipe-count-transform/pipe-count-transform.module.mjs +20 -0
  32. package/esm2022/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.mjs +37 -0
  33. package/esm2022/lib/pipes/pipe-coursename/PipeCourseNameModule.mjs +20 -0
  34. package/esm2022/lib/pipes/pipe-coursename/pipe-coursename.pipe.mjs +17 -0
  35. package/esm2022/lib/pipes/pipe-date-concat/pipe-date-concat.module.mjs +20 -0
  36. package/esm2022/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.mjs +36 -0
  37. package/esm2022/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.mjs +20 -0
  38. package/esm2022/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.mjs +86 -0
  39. package/esm2022/lib/pipes/pipe-email/pipe-email.module.mjs +20 -0
  40. package/esm2022/lib/pipes/pipe-email/pipe-email.pipe.mjs +16 -0
  41. package/esm2022/lib/pipes/pipe-filter/pipe-filter.module.mjs +20 -0
  42. package/esm2022/lib/pipes/pipe-filter/pipe-filter.pipe.mjs +20 -0
  43. package/esm2022/lib/pipes/pipe-filter-search/pipe-filter-search.module.mjs +20 -0
  44. package/esm2022/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.mjs +42 -0
  45. package/esm2022/lib/pipes/pipe-filter-v2/pipe-filter-v2.module.mjs +20 -0
  46. package/esm2022/lib/pipes/pipe-filter-v2/pipe-filter-v2.pipe.mjs +25 -0
  47. package/esm2022/lib/pipes/pipe-filter-v3/pipe-filter-v3.module.mjs +20 -0
  48. package/esm2022/lib/pipes/pipe-filter-v3/pipe-filter-v3.pipe.mjs +27 -0
  49. package/esm2022/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.mjs +20 -0
  50. package/esm2022/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.mjs +16 -0
  51. package/esm2022/lib/pipes/pipe-limit-to/pipe-limit-to.module.mjs +20 -0
  52. package/esm2022/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.mjs +29 -0
  53. package/esm2022/lib/pipes/pipe-list-filter/pipe-list-filter.module.mjs +20 -0
  54. package/esm2022/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.mjs +21 -0
  55. package/esm2022/lib/pipes/pipe-name-transform/pipe-name-transform.module.mjs +20 -0
  56. package/esm2022/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.mjs +26 -0
  57. package/esm2022/lib/pipes/pipe-nic-relative/pipe-nic-relative.module.mjs +20 -0
  58. package/esm2022/lib/pipes/pipe-nic-relative/pipe-nic-relative.pipe.mjs +40 -0
  59. package/esm2022/lib/pipes/pipe-order-by/pipe-order-by.module.mjs +20 -0
  60. package/esm2022/lib/pipes/pipe-order-by/pipe-order-by.pipe.mjs +17 -0
  61. package/esm2022/lib/pipes/pipe-ordinal/pipe-ordinal.module.mjs +20 -0
  62. package/esm2022/lib/pipes/pipe-ordinal/pipe-ordinal.pipe.mjs +21 -0
  63. package/esm2022/lib/pipes/pipe-partial-content/pipe-partial-content.module.mjs +20 -0
  64. package/esm2022/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.mjs +22 -0
  65. package/esm2022/lib/pipes/pipe-public-URL/pipe-public-URL.module.mjs +20 -0
  66. package/esm2022/lib/pipes/pipe-public-URL/pipe-public-URL.pipe.mjs +27 -0
  67. package/esm2022/lib/pipes/pipe-relative-time/pipe-relative-time.module.mjs +20 -0
  68. package/esm2022/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.mjs +20 -0
  69. package/esm2022/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.mjs +20 -0
  70. package/esm2022/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.mjs +33 -0
  71. package/esm2022/lib/resolvers/explore-detail.resolver.mjs +76 -0
  72. package/esm2022/lib/resolvers/marketing-offering.resolve.mjs +35 -0
  73. package/esm2022/lib/resolvers/module-name.resolver.mjs +36 -0
  74. package/esm2022/lib/resolvers/page-name.resolver.mjs +33 -0
  75. package/esm2022/lib/resolvers/page.constant.mjs +4 -0
  76. package/esm2022/lib/resolvers/page.model.mjs +2 -0
  77. package/esm2022/lib/resolvers/page.resolver.mjs +82 -0
  78. package/esm2022/lib/resolvers/resolver.model.mjs +2 -0
  79. package/esm2022/lib/services/auth-keycloak.service.mjs +124 -0
  80. package/esm2022/lib/services/auth-microsoft.service.mjs +173 -0
  81. package/esm2022/lib/services/card-content.model.mjs +11 -0
  82. package/esm2022/lib/services/configurations.model.mjs +2 -0
  83. package/esm2022/lib/services/configurations.service.mjs +83 -0
  84. package/esm2022/lib/services/content-strip-multiple.model.mjs +2 -0
  85. package/esm2022/lib/services/event.model.mjs +145 -0
  86. package/esm2022/lib/services/event.service.mjs +294 -0
  87. package/esm2022/lib/services/logger.service.mjs +45 -0
  88. package/esm2022/lib/services/ms-office.model.mjs +2 -0
  89. package/esm2022/lib/services/multilingual-translations.service.mjs +121 -0
  90. package/esm2022/lib/services/nps-grid.service.mjs +38 -0
  91. package/esm2022/lib/services/subapplication-respond.service.mjs +206 -0
  92. package/esm2022/lib/services/telemetry.service.mjs +695 -0
  93. package/esm2022/lib/services/user-preference.model.mjs +2 -0
  94. package/esm2022/lib/services/user-preference.service.mjs +92 -0
  95. package/esm2022/lib/services/utility.service.mjs +122 -0
  96. package/esm2022/lib/services/value.service.mjs +25 -0
  97. package/esm2022/lib/services/widget-content.model.mjs +144 -0
  98. package/esm2022/lib/services/widget-content.service.mjs +198 -0
  99. package/esm2022/lib/services/widget-resolver.model.mjs +2 -0
  100. package/esm2022/lib/services/widget-search.model.mjs +2 -0
  101. package/esm2022/lib/services-new/data-transfer.service.mjs +23 -0
  102. package/esm2022/lib/services-new/widget-enroll.service.mjs +55 -0
  103. package/esm2022/public-api.mjs +98 -0
  104. package/esm2022/sunbird-cb-utils-v2.mjs +2 -0
  105. package/fesm2022/sunbird-cb-utils-v2.mjs +5424 -0
  106. package/fesm2022/sunbird-cb-utils-v2.mjs.map +1 -0
  107. package/index.d.ts +2 -0
  108. package/lib/components/image-crop/image-crop.component.d.ts +59 -0
  109. package/lib/components/image-crop/image-crop.module.d.ts +16 -0
  110. package/lib/constants/features.enum.d.ts +553 -0
  111. package/lib/constants/instances.enum.d.ts +3 -0
  112. package/lib/constants/misc.constants.d.ts +2 -0
  113. package/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.d.ts +21 -0
  114. package/lib/directives/class-change-on-scroll/class-change-on-scroll.module.d.ts +8 -0
  115. package/lib/directives/default-thumbnail/default-thumbnail.directive.d.ts +12 -0
  116. package/lib/directives/default-thumbnail/default-thumbnail.module.d.ts +8 -0
  117. package/lib/directives/image-responsive/image-responsive.directive.d.ts +20 -0
  118. package/lib/directives/image-responsive/image-responsive.module.d.ts +8 -0
  119. package/lib/directives/in-view-port/in-view-port.directive.d.ts +14 -0
  120. package/lib/directives/in-view-port/in-view-port.module.d.ts +8 -0
  121. package/lib/directives/navigation/navigation.directive.d.ts +12 -0
  122. package/lib/directives/navigation/navigation.module.d.ts +8 -0
  123. package/lib/directives/permission/permission.directive.d.ts +6 -0
  124. package/lib/directives/permission/permission.module.d.ts +8 -0
  125. package/lib/helpers/functions/getStringifiedQueryParams.d.ts +3 -0
  126. package/lib/helpers/horizontal-scroller/horizontal-scroller.component.d.ts +21 -0
  127. package/lib/helpers/horizontal-scroller/horizontal-scroller.module.d.ts +11 -0
  128. package/lib/helpers/horizontal-scroller-v2/horizontal-scroller-v2.component.d.ts +39 -0
  129. package/lib/helpers/horizontal-scroller-v2/horizontal-scroller-v2.module.d.ts +11 -0
  130. package/lib/helpers/logout/logout.component.d.ts +23 -0
  131. package/lib/helpers/logout/logout.module.d.ts +11 -0
  132. package/lib/models/profile-v3.models.d.ts +91 -0
  133. package/lib/pipes/pipe-certificate-image-URL/pipe-certimage-URL.module.d.ts +8 -0
  134. package/lib/pipes/pipe-certificate-image-URL/pipe-certimage-URL.pipe.d.ts +9 -0
  135. package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.d.ts +8 -0
  136. package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.d.ts +13 -0
  137. package/lib/pipes/pipe-count-transform/pipe-count-transform.module.d.ts +8 -0
  138. package/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.d.ts +7 -0
  139. package/lib/pipes/pipe-coursename/PipeCourseNameModule.d.ts +8 -0
  140. package/lib/pipes/pipe-coursename/pipe-coursename.pipe.d.ts +7 -0
  141. package/lib/pipes/pipe-date-concat/pipe-date-concat.module.d.ts +8 -0
  142. package/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.d.ts +16 -0
  143. package/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.d.ts +8 -0
  144. package/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.d.ts +9 -0
  145. package/lib/pipes/pipe-email/pipe-email.module.d.ts +8 -0
  146. package/lib/pipes/pipe-email/pipe-email.pipe.d.ts +7 -0
  147. package/lib/pipes/pipe-filter/pipe-filter.module.d.ts +8 -0
  148. package/lib/pipes/pipe-filter/pipe-filter.pipe.d.ts +7 -0
  149. package/lib/pipes/pipe-filter-search/pipe-filter-search.module.d.ts +8 -0
  150. package/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.d.ts +7 -0
  151. package/lib/pipes/pipe-filter-v2/pipe-filter-v2.module.d.ts +8 -0
  152. package/lib/pipes/pipe-filter-v2/pipe-filter-v2.pipe.d.ts +7 -0
  153. package/lib/pipes/pipe-filter-v3/pipe-filter-v3.module.d.ts +8 -0
  154. package/lib/pipes/pipe-filter-v3/pipe-filter-v3.pipe.d.ts +7 -0
  155. package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.d.ts +8 -0
  156. package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.d.ts +7 -0
  157. package/lib/pipes/pipe-limit-to/pipe-limit-to.module.d.ts +8 -0
  158. package/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.d.ts +7 -0
  159. package/lib/pipes/pipe-list-filter/pipe-list-filter.module.d.ts +8 -0
  160. package/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.d.ts +7 -0
  161. package/lib/pipes/pipe-name-transform/pipe-name-transform.module.d.ts +8 -0
  162. package/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.d.ts +12 -0
  163. package/lib/pipes/pipe-nic-relative/pipe-nic-relative.module.d.ts +8 -0
  164. package/lib/pipes/pipe-nic-relative/pipe-nic-relative.pipe.d.ts +10 -0
  165. package/lib/pipes/pipe-order-by/pipe-order-by.module.d.ts +8 -0
  166. package/lib/pipes/pipe-order-by/pipe-order-by.pipe.d.ts +12 -0
  167. package/lib/pipes/pipe-ordinal/pipe-ordinal.module.d.ts +8 -0
  168. package/lib/pipes/pipe-ordinal/pipe-ordinal.pipe.d.ts +7 -0
  169. package/lib/pipes/pipe-partial-content/pipe-partial-content.module.d.ts +8 -0
  170. package/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.d.ts +7 -0
  171. package/lib/pipes/pipe-public-URL/pipe-public-URL.module.d.ts +8 -0
  172. package/lib/pipes/pipe-public-URL/pipe-public-URL.pipe.d.ts +9 -0
  173. package/lib/pipes/pipe-relative-time/pipe-relative-time.module.d.ts +8 -0
  174. package/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.d.ts +7 -0
  175. package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.d.ts +8 -0
  176. package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.d.ts +10 -0
  177. package/lib/resolvers/explore-detail.resolver.d.ts +19 -0
  178. package/lib/resolvers/marketing-offering.resolve.d.ts +13 -0
  179. package/lib/resolvers/module-name.resolver.d.ts +9 -0
  180. package/lib/resolvers/page-name.resolver.d.ts +8 -0
  181. package/lib/resolvers/page.constant.d.ts +1 -0
  182. package/lib/resolvers/page.model.d.ts +41 -0
  183. package/lib/resolvers/page.resolver.d.ts +20 -0
  184. package/lib/resolvers/resolver.model.d.ts +4 -0
  185. package/lib/services/auth-keycloak.service.d.ts +23 -0
  186. package/lib/services/auth-microsoft.service.d.ts +33 -0
  187. package/lib/services/card-content.model.d.ts +29 -0
  188. package/lib/services/configurations.model.d.ts +526 -0
  189. package/lib/services/configurations.service.d.ts +79 -0
  190. package/lib/services/content-strip-multiple.model.d.ts +80 -0
  191. package/lib/services/event.model.d.ts +222 -0
  192. package/lib/services/event.service.d.ts +39 -0
  193. package/lib/services/logger.service.d.ts +18 -0
  194. package/lib/services/ms-office.model.d.ts +6 -0
  195. package/lib/services/multilingual-translations.service.d.ts +23 -0
  196. package/lib/services/nps-grid.service.d.ts +15 -0
  197. package/lib/services/subapplication-respond.service.d.ts +26 -0
  198. package/lib/services/telemetry.service.d.ts +59 -0
  199. package/lib/services/user-preference.model.d.ts +34 -0
  200. package/lib/services/user-preference.service.d.ts +14 -0
  201. package/lib/services/utility.service.d.ts +34 -0
  202. package/lib/services/value.service.d.ts +11 -0
  203. package/lib/services/widget-content.model.d.ts +356 -0
  204. package/lib/services/widget-content.service.d.ts +54 -0
  205. package/lib/services/widget-resolver.model.d.ts +48 -0
  206. package/lib/services/widget-search.model.d.ts +114 -0
  207. package/lib/services-new/data-transfer.service.d.ts +10 -0
  208. package/lib/services-new/widget-enroll.service.d.ts +17 -0
  209. package/package.json +38 -0
  210. package/public-api.d.ts +97 -0
@@ -0,0 +1,145 @@
1
+ export var WsEvents;
2
+ (function (WsEvents) {
3
+ let WsEventType;
4
+ (function (WsEventType) {
5
+ WsEventType["Action"] = "Action";
6
+ WsEventType["Telemetry"] = "Telemetry";
7
+ WsEventType["PageNavigation"] = "PageNavigation";
8
+ WsEventType["AccessRestrictedContentAccessed"] = "AccessRestrictedContentAccessed";
9
+ WsEventType["PageSlow"] = "PageSlow";
10
+ WsEventType["ErrorOccurred"] = "ErrorOccurred";
11
+ WsEventType["WidgetResolveError"] = "WidgetResolveError";
12
+ })(WsEventType = WsEvents.WsEventType || (WsEvents.WsEventType = {}));
13
+ let WsEventLogLevel;
14
+ (function (WsEventLogLevel) {
15
+ WsEventLogLevel["Warn"] = "Warn";
16
+ WsEventLogLevel["Error"] = "Error";
17
+ WsEventLogLevel["Info"] = "Info";
18
+ WsEventLogLevel["Log"] = "Log";
19
+ WsEventLogLevel["Trace"] = "Trace";
20
+ })(WsEventLogLevel = WsEvents.WsEventLogLevel || (WsEvents.WsEventLogLevel = {}));
21
+ let WsAuditTypes;
22
+ (function (WsAuditTypes) {
23
+ WsAuditTypes["Created"] = "Created";
24
+ WsAuditTypes["Updated"] = "Updated";
25
+ WsAuditTypes["Deleted"] = "Deleted";
26
+ })(WsAuditTypes = WsEvents.WsAuditTypes || (WsEvents.WsAuditTypes = {}));
27
+ let WsTimeSpentType;
28
+ (function (WsTimeSpentType) {
29
+ WsTimeSpentType["Page"] = "Page";
30
+ WsTimeSpentType["Player"] = "Player";
31
+ })(WsTimeSpentType = WsEvents.WsTimeSpentType || (WsEvents.WsTimeSpentType = {}));
32
+ let WsTimeSpentMode;
33
+ (function (WsTimeSpentMode) {
34
+ WsTimeSpentMode["Play"] = "Play";
35
+ WsTimeSpentMode["View"] = "View";
36
+ })(WsTimeSpentMode = WsEvents.WsTimeSpentMode || (WsEvents.WsTimeSpentMode = {}));
37
+ let externalTelemetrypdata;
38
+ (function (externalTelemetrypdata) {
39
+ externalTelemetrypdata["RBCP"] = "rbcp-web-ui";
40
+ })(externalTelemetrypdata = WsEvents.externalTelemetrypdata || (WsEvents.externalTelemetrypdata = {}));
41
+ let EnumTelemetrySubType;
42
+ (function (EnumTelemetrySubType) {
43
+ EnumTelemetrySubType["Init"] = "Init";
44
+ EnumTelemetrySubType["Interact"] = "Interact";
45
+ EnumTelemetrySubType["Loaded"] = "Loaded";
46
+ EnumTelemetrySubType["Unloaded"] = "Unloaded";
47
+ EnumTelemetrySubType["StateChange"] = "StateChange";
48
+ EnumTelemetrySubType["HeartBeat"] = "HeartBeat";
49
+ EnumTelemetrySubType["Search"] = "Search";
50
+ EnumTelemetrySubType["Feedback"] = "Feedback";
51
+ EnumTelemetrySubType["Impression"] = "Impression";
52
+ EnumTelemetrySubType["Chatbot"] = "Chatbot";
53
+ EnumTelemetrySubType["GetStarted"] = "Get Started";
54
+ EnumTelemetrySubType["PlatformRating"] = "PlatformRating";
55
+ })(EnumTelemetrySubType = WsEvents.EnumTelemetrySubType || (WsEvents.EnumTelemetrySubType = {}));
56
+ let EnumTelemetryPdfActivity;
57
+ (function (EnumTelemetryPdfActivity) {
58
+ EnumTelemetryPdfActivity["PAGE_CHANGED"] = "PAGE_CHANGED";
59
+ EnumTelemetryPdfActivity["FULLSCREEN_ACTIVATED"] = "FULLSCREEN_ACTIVATED";
60
+ EnumTelemetryPdfActivity["FULLSCREEN_DEACTIVATED"] = "FULLSCREEN_DEACTIVATED";
61
+ EnumTelemetryPdfActivity["ZOOM_CHANGE"] = "ZOOM_CHANGE";
62
+ EnumTelemetryPdfActivity["NONE"] = "NONE";
63
+ })(EnumTelemetryPdfActivity = WsEvents.EnumTelemetryPdfActivity || (WsEvents.EnumTelemetryPdfActivity = {}));
64
+ let EnumTelemetryMediaActivity;
65
+ (function (EnumTelemetryMediaActivity) {
66
+ EnumTelemetryMediaActivity["PLAYED"] = "PLAYED";
67
+ EnumTelemetryMediaActivity["PAUSED"] = "PAUSED";
68
+ EnumTelemetryMediaActivity["SEEKED"] = "SEEKED";
69
+ EnumTelemetryMediaActivity["ENDED"] = "ENDED";
70
+ EnumTelemetryMediaActivity["VOLUME_CHANGE"] = "VOLUME_CHANGE";
71
+ EnumTelemetryMediaActivity["MUTE"] = "MUTE";
72
+ EnumTelemetryMediaActivity["UNMUTE"] = "UNMUTE";
73
+ EnumTelemetryMediaActivity["PLAYBACK_SPEED_CHANGE"] = "PLAYBACK_SPEED_CHANGE";
74
+ EnumTelemetryMediaActivity["FULLSCREEN_ACTIVATED"] = "FULLSCREEN_ACTIVATED";
75
+ EnumTelemetryMediaActivity["FULLSCREEN_DEACTIVATED"] = "FULLSCREEN_DEACTIVATED";
76
+ EnumTelemetryMediaActivity["PICTURE_IN_PICTURE_ACTIVATED"] = "PICTURE_IN_PICTURE_ACTIVATED";
77
+ EnumTelemetryMediaActivity["PICTURE_IN_PICTURE_DEACTIVATED"] = "PICTURE_IN_PICTURE_DEACTIVATED";
78
+ EnumTelemetryMediaActivity["NONE"] = "NONE";
79
+ })(EnumTelemetryMediaActivity = WsEvents.EnumTelemetryMediaActivity || (WsEvents.EnumTelemetryMediaActivity = {}));
80
+ let EnumTelemetryMediaState;
81
+ (function (EnumTelemetryMediaState) {
82
+ EnumTelemetryMediaState["PLAYING"] = "PLAYING";
83
+ EnumTelemetryMediaState["PAUSED"] = "PAUSED";
84
+ EnumTelemetryMediaState["ENDED"] = "ENDED";
85
+ EnumTelemetryMediaState["BUFFERING"] = "BUFFERING";
86
+ EnumTelemetryMediaState["NOT_STARTED"] = "NOT_STARTED";
87
+ })(EnumTelemetryMediaState = WsEvents.EnumTelemetryMediaState || (WsEvents.EnumTelemetryMediaState = {}));
88
+ let EnumTelemetrymodules;
89
+ (function (EnumTelemetrymodules) {
90
+ EnumTelemetrymodules["CONTENT"] = "content";
91
+ EnumTelemetrymodules["FEEDBACK"] = "feedback";
92
+ EnumTelemetrymodules["COURSE"] = "course";
93
+ EnumTelemetrymodules["PROGRAM"] = "program";
94
+ EnumTelemetrymodules["EXPLORE"] = "explore";
95
+ EnumTelemetrymodules["LEARN"] = "learn";
96
+ EnumTelemetrymodules["HOME"] = "home";
97
+ EnumTelemetrymodules["DASHBOARD"] = "dashboard";
98
+ EnumTelemetrymodules["SEARCH"] = "search";
99
+ EnumTelemetrymodules["DISCUSS"] = "Discuss";
100
+ EnumTelemetrymodules["COMPETENCY"] = "competency";
101
+ EnumTelemetrymodules["EVENTS"] = "events";
102
+ EnumTelemetrymodules["CAREER"] = "career";
103
+ EnumTelemetrymodules["PROFILE"] = "profile";
104
+ EnumTelemetrymodules["NETWORK"] = "network";
105
+ EnumTelemetrymodules["SUPPORT"] = "support";
106
+ EnumTelemetrymodules["KARMAPOINTS"] = "karmapoints";
107
+ EnumTelemetrymodules["PLATFORM_RATING"] = "platformrating";
108
+ })(EnumTelemetrymodules = WsEvents.EnumTelemetrymodules || (WsEvents.EnumTelemetrymodules = {}));
109
+ let EnumInteractTypes;
110
+ (function (EnumInteractTypes) {
111
+ EnumInteractTypes["CLICK"] = "click";
112
+ EnumInteractTypes["subType"] = "subType";
113
+ })(EnumInteractTypes = WsEvents.EnumInteractTypes || (WsEvents.EnumInteractTypes = {}));
114
+ let EnumInteractSubTypes;
115
+ (function (EnumInteractSubTypes) {
116
+ EnumInteractSubTypes["COURSE_TAB"] = "course-tab";
117
+ EnumInteractSubTypes["CAREER_TAB"] = "career-tab";
118
+ EnumInteractSubTypes["NETWORK_TAB"] = "network-tab";
119
+ EnumInteractSubTypes["COMPETENCY_TAB"] = "competency-tab";
120
+ EnumInteractSubTypes["PROFILE_EDIT_TAB"] = "profile-edit-tab";
121
+ EnumInteractSubTypes["DISCUSS_TAB"] = "discuss-tab";
122
+ EnumInteractSubTypes["EVENTS_TAB"] = "events-tab";
123
+ EnumInteractSubTypes["SIDE_MENU"] = "side-menu";
124
+ EnumInteractSubTypes["MY_IGOT"] = "my-igot";
125
+ EnumInteractSubTypes["MY_LEARNING"] = "my-learning";
126
+ EnumInteractSubTypes["RECENTLY_ADDED"] = "recently-added";
127
+ EnumInteractSubTypes["TRENDING_IN_YOUR_DEPARTMENT"] = "trending-in-your-department";
128
+ EnumInteractSubTypes["TRENDING_ACROSS_YOUR_DEPARTMENTS"] = "trending-across-your-departments";
129
+ EnumInteractSubTypes["LEARNING_UNDER_30_MINUTES"] = "learning-under-30-minutes";
130
+ EnumInteractSubTypes["BLENDED_PROGRAM"] = "blended program";
131
+ EnumInteractSubTypes["RECENT_CONNECTION_REQUEST"] = "recent-connection-request";
132
+ EnumInteractSubTypes["CERTIFICATIONS_OF_THE_WEEK"] = "certifications-of-the-week";
133
+ EnumInteractSubTypes["HOME_PAGE_STRIP_TABS"] = "home-page-strip-tabs";
134
+ EnumInteractSubTypes["HUB_MENU"] = "hub-menu";
135
+ EnumInteractSubTypes["PORTAL_NUDGE"] = "portal_nudge";
136
+ EnumInteractSubTypes["CERTIFICATE"] = "certificate";
137
+ EnumInteractSubTypes["DEFAULT_SUBTYPE"] = "default-subtype";
138
+ EnumInteractSubTypes["SUGGESTED_CONNECTIONS"] = "suggested-connections";
139
+ EnumInteractSubTypes["PROFILE"] = "profile";
140
+ EnumInteractSubTypes["ADD_POST"] = "add-post";
141
+ EnumInteractSubTypes["TRENDING_DISCUSSIONS"] = "trending-discussions";
142
+ EnumInteractSubTypes["MY_DISCUSSIONS"] = "my-discussions";
143
+ })(EnumInteractSubTypes = WsEvents.EnumInteractSubTypes || (WsEvents.EnumInteractSubTypes = {}));
144
+ })(WsEvents || (WsEvents = {}));
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJ5L3N1bmJpcmQtY2IvdXRpbHMtdjIvc3JjL2xpYi9zZXJ2aWNlcy9ldmVudC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLEtBQVcsUUFBUSxDQWlQeEI7QUFqUEQsV0FBaUIsUUFBUTtJQVd2QixJQUFZLFdBUVg7SUFSRCxXQUFZLFdBQVc7UUFDckIsZ0NBQWlCLENBQUE7UUFDakIsc0NBQXVCLENBQUE7UUFDdkIsZ0RBQWlDLENBQUE7UUFDakMsa0ZBQW1FLENBQUE7UUFDbkUsb0NBQXFCLENBQUE7UUFDckIsOENBQStCLENBQUE7UUFDL0Isd0RBQXlDLENBQUE7SUFDM0MsQ0FBQyxFQVJXLFdBQVcsR0FBWCxvQkFBVyxLQUFYLG9CQUFXLFFBUXRCO0lBQ0QsSUFBWSxlQU1YO0lBTkQsV0FBWSxlQUFlO1FBQ3pCLGdDQUFhLENBQUE7UUFDYixrQ0FBZSxDQUFBO1FBQ2YsZ0NBQWEsQ0FBQTtRQUNiLDhCQUFXLENBQUE7UUFDWCxrQ0FBZSxDQUFBO0lBQ2pCLENBQUMsRUFOVyxlQUFlLEdBQWYsd0JBQWUsS0FBZix3QkFBZSxRQU0xQjtJQUNBLElBQVksWUFJWDtJQUpELFdBQVksWUFBWTtRQUN0QixtQ0FBbUIsQ0FBQTtRQUNuQixtQ0FBbUIsQ0FBQTtRQUNuQixtQ0FBbUIsQ0FBQTtJQUNyQixDQUFDLEVBSlcsWUFBWSxHQUFaLHFCQUFZLEtBQVoscUJBQVksUUFJdkI7SUFDRixJQUFZLGVBR1g7SUFIRCxXQUFZLGVBQWU7UUFDekIsZ0NBQWEsQ0FBQTtRQUNiLG9DQUFpQixDQUFBO0lBQ25CLENBQUMsRUFIVyxlQUFlLEdBQWYsd0JBQWUsS0FBZix3QkFBZSxRQUcxQjtJQUNELElBQVksZUFHWDtJQUhELFdBQVksZUFBZTtRQUN6QixnQ0FBYSxDQUFBO1FBQ2IsZ0NBQWEsQ0FBQTtJQUNmLENBQUMsRUFI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eUIsQ0FBQTtRQUN6QiwrQ0FBdUIsQ0FBQTtRQUN2QiwyQ0FBbUIsQ0FBQTtRQUNuQixtREFBMkIsQ0FBQTtRQUMzQix5REFBaUMsQ0FBQTtRQUNqQyxtRkFBMkQsQ0FBQTtRQUMzRCw2RkFBcUUsQ0FBQTtRQUNyRSwrRUFBdUQsQ0FBQTtRQUN2RCwyREFBbUMsQ0FBQTtRQUNuQywrRUFBdUQsQ0FBQTtRQUN2RCxpRkFBeUQsQ0FBQTtRQUN6RCxxRUFBNkMsQ0FBQTtRQUM3Qyw2Q0FBcUIsQ0FBQTtRQUNyQixxREFBNkIsQ0FBQTtRQUM3QixtREFBMkIsQ0FBQTtRQUMzQiwyREFBbUMsQ0FBQTtRQUNuQyx1RUFBK0MsQ0FBQTtRQUMvQywyQ0FBbUIsQ0FBQTtRQUNuQiw2Q0FBcUIsQ0FBQTtRQUNyQixxRUFBNkMsQ0FBQTtRQUM3Qyx5REFBaUMsQ0FBQTtJQUNuQyxDQUFDLEVBNUJXLG9CQUFvQixHQUFwQiw2QkFBb0IsS0FBcEIsNkJBQW9CLFFBNEIvQjtBQUNILENBQUMsRUFqUGdCLFFBQVEsS0FBUixRQUFRLFFBaVB4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBuYW1lc3BhY2UgV3NFdmVudHMge1xyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVdzRXZlbnRzRnJvbVdpZGdldCB7XHJcbiAgICB0eXBlOiAnd2lkZ2V0J1xyXG4gICAgd2lkZ2V0VHlwZTogc3RyaW5nXHJcbiAgICB3aWRnZXRTdWJUeXBlOiBzdHJpbmdcclxuICB9XHJcbiAgZXhwb3J0IGludGVyZmFjZSBJV3NFdmVudHNGcm9tUGFnZSB7XHJcbiAgICB0eXBlOiAncGFnZSdcclxuICAgIHBhZ2VVcmw6IHN0cmluZ1xyXG4gICAgcGFnZVR5cGU6IHN0cmluZ1xyXG4gIH1cclxuICBleHBvcnQgZW51bSBXc0V2ZW50VHlwZSB7XHJcbiAgICBBY3Rpb24gPSAnQWN0aW9uJyxcclxuICAgIFRlbGVtZXRyeSA9ICdUZWxlbWV0cnknLFxyXG4gICAgUGFnZU5hdmlnYXRpb24gPSAnUGFnZU5hdmlnYXRpb24nLFxyXG4gICAgQWNjZXNzUmVzdHJpY3RlZENvbnRlbnRBY2Nlc3NlZCA9ICdBY2Nlc3NSZXN0cmljdGVkQ29udGVudEFjY2Vzc2VkJyxcclxuICAgIFBhZ2VTbG93ID0gJ1BhZ2VTbG93JyxcclxuICAgIEVycm9yT2NjdXJyZWQgPSAnRXJyb3JPY2N1cnJlZCcsXHJcbiAgICBXaWRnZXRSZXNvbHZlRXJyb3IgPSAnV2lkZ2V0UmVzb2x2ZUVycm9yJyxcclxuICB9XHJcbiAgZXhwb3J0IGVudW0gV3NFdmVudExvZ0xldmVsIHtcclxuICAgIFdhcm4gPSAnV2FybicsXHJcbiAgICBFcnJvciA9ICdFcnJvcicsXHJcbiAgICBJbmZvID0gJ0luZm8nLFxyXG4gICAgTG9nID0gJ0xvZycsXHJcbiAgICBUcmFjZSA9ICdUcmFjZScsXHJcbiAgfVxyXG4gICBleHBvcnQgZW51bSBXc0F1ZGl0VHlwZXMge1xyXG4gICAgIENyZWF0ZWQgPSAnQ3JlYXRlZCcsXHJcbiAgICAgVXBkYXRlZCA9ICdVcGRhdGVkJyxcclxuICAgICBEZWxldGVkID0gJ0RlbGV0ZWQnLFxyXG4gICB9XHJcbiAgZXhwb3J0IGVudW0gV3NUaW1lU3BlbnRUeXBlIHtcclxuICAgIFBhZ2UgPSAnUGFnZScsXHJcbiAgICBQbGF5ZXIgPSAnUGxheWVyJyxcclxuICB9XHJcbiAgZXhwb3J0IGVudW0gV3NUaW1lU3BlbnRNb2RlIHtcclxuICAgIFBsYXkgPSAnUGxheScsXHJcbiAgICBWaWV3ID0gJ1ZpZXcnLFxyXG4gIH1cclxuICBleHBvcnQgZW51bSBleHRlcm5hbFRlbGVtZXRyeXBkYXRhIHtcclxuICAgIFJCQ1AgPSAncmJjcC13ZWItdWknLFxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJV3NFdmVudHM8VD4ge1xyXG4gICAgZXZlbnRUeXBlOiBXc0V2ZW50VHlwZVxyXG4gICAgZXZlbnRMb2dMZXZlbDogV3NFdmVudExvZ0xldmVsXHJcbiAgICBmcm9tOiBJV3NFdmVudHNGcm9tV2lkZ2V0IHwgSVdzRXZlbnRzRnJvbVBhZ2UgfCBzdHJpbmdcclxuICAgIHRvOiBzdHJpbmdcclxuICAgIGRhdGE6IFRcclxuICAgIHBhc3NUaHJvdWdoRGF0YT86IGFueVxyXG4gICAgcGFnZUNvbnRleHQ/OiBhbnlcclxuICB9XHJcblxyXG4gIGV4cG9ydCBlbnVtIEVudW1UZWxlbWV0cnlTdWJUeXBlIHtcclxuICAgIEluaXQgPSAnSW5pdCcsXHJcbiAgICBJbnRlcmFjdCA9ICdJbnRlcmFjdCcsXHJcbiAgICBMb2FkZWQgPSAnTG9hZGVkJyxcclxuICAgIFVubG9hZGVkID0gJ1VubG9hZGVkJyxcclxuICAgIFN0YXRlQ2hhbmdlID0gJ1N0YXRlQ2hhbmdlJyxcclxuICAgIEhlYXJ0QmVhdCA9ICdIZWFydEJlYXQnLFxyXG4gICAgU2VhcmNoID0gJ1NlYXJjaCcsXHJcbiAgICBGZWVkYmFjayA9ICdGZWVkYmFjaycsXHJcbiAgICBJbXByZXNzaW9uID0gJ0ltcHJlc3Npb24nLFxyXG4gICAgQ2hhdGJvdCA9ICdDaGF0Ym90JyxcclxuICAgIEdldFN0YXJ0ZWQgPSAnR2V0IFN0YXJ0ZWQnLFxyXG4gICAgUGxhdGZvcm1SYXRpbmcgPSAnUGxhdGZvcm1SYXRpbmcnLFxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJVGVsZW1ldHJ5UGFnZUNvbnRleHQge1xyXG4gICAgcGFnZUlkPzogc3RyaW5nLFxyXG4gICAgbW9kdWxlPzogc3RyaW5nLFxyXG4gICAgcGFnZUlkRXh0Pzogc3RyaW5nXHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIElUZWxlbWV0cnlFZGF0YSB7XHJcbiAgICB0eXBlOiBzdHJpbmdcclxuICAgIHN1YlR5cGU/OiBzdHJpbmdcclxuICAgIGlkPzogc3RyaW5nXHJcbiAgICBwYWdlaWQ/OiBzdHJpbmdcclxuICAgIHRhcmdldD86IHN0cmluZ1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJVGVsZW1ldHJ5VGFiRGF0YSB7XHJcbiAgICBsYWJlbDogc3RyaW5nLFxyXG4gICAgaW5kZXg6IG51bWJlcixcclxuICB9XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVdzRXZlbnRUZWxlbWV0cnkge1xyXG4gICAgZXZlbnRTdWJUeXBlOiBFbnVtVGVsZW1ldHJ5U3ViVHlwZVxyXG4gICAgcGFnZUNvbnRleHQ/OiBJVGVsZW1ldHJ5UGFnZUNvbnRleHRcclxuICB9XHJcblxyXG4gIC8vIFBERiBUZWxlbWV0cnkgRXZlbnRcclxuICBleHBvcnQgZW51bSBFbnVtVGVsZW1ldHJ5UGRmQWN0aXZpdHkge1xyXG4gICAgUEFHRV9DSEFOR0VEID0gJ1BBR0VfQ0hBTkdFRCcsXHJcbiAgICBGVUxMU0NSRUVOX0FDVElWQVRFRCA9ICdGVUxMU0NSRUVOX0FDVElWQVRFRCcsXHJcbiAgICBGVUxMU0NSRUVOX0RFQUNUSVZBVEVEID0gJ0ZVTExTQ1JFRU5fREVBQ1RJVkFURUQnLFxyXG4gICAgWk9PTV9DSEFOR0UgPSAnWk9PTV9DSEFOR0UnLFxyXG4gICAgTk9ORSA9ICdOT05FJyxcclxuICB9XHJcbiAgZXhwb3J0IGludGVyZmFjZSBJV3NFdmVudFRlbGVtZXRyeVBkZkRhdGEgZXh0ZW5kcyBJV3NFdmVudFRlbGVtZXRyeSB7XHJcbiAgICBhY3Rpdml0eVR5cGU6IEVudW1UZWxlbWV0cnlQZGZBY3Rpdml0eVxyXG4gICAgY3VycmVudFBhZ2U6IG51bWJlclxyXG4gICAgdG90YWxQYWdlOiBudW1iZXJcclxuICAgIGFjdGl2aXR5U3RhcnRlZEF0OiBEYXRlIHwgbnVsbFxyXG4gICAgb2JqZWN0OiBhbnlcclxuICB9XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVdzRXZlbnRUZWxlbWV0cnlTdXJ2ZXlEYXRhIGV4dGVuZHMgSVdzRXZlbnRUZWxlbWV0cnkge1xyXG4gICAgb2JqZWN0OiBhbnlcclxuICB9XHJcbiAgZXhwb3J0IHR5cGUgV3NFdmVudFRlbGVtZXRyeVBERiA9IElXc0V2ZW50czxJV3NFdmVudFRlbGVtZXRyeVBkZkRhdGE+XHJcbiAgZXhwb3J0IHR5cGUgV3NFdmVudFRlbGVtZXRyeVN1cnZleSA9IElXc0V2ZW50czxJV3NFdmVudFRlbGVtZXRyeVN1cnZleURhdGE+XHJcblxyXG4gIC8vIEludGVyYWN0IFRlbGVtZXRyeSBFdmVudFxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVdzRXZlbnRUZWxlbWV0cnlJbnRlcmFjdCBleHRlbmRzIElXc0V2ZW50VGVsZW1ldHJ5IHtcclxuICAgIGVkYXRhOiBJVGVsZW1ldHJ5RWRhdGFcclxuICAgIG9iamVjdDogYW55XHJcbiAgICBwYWdlQ29udGV4dD86IElUZWxlbWV0cnlQYWdlQ29udGV4dFxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJV3NFdmVudFRlbGVtZXRyeUZlZWRiYWNrIGV4dGVuZHMgSVdzRXZlbnRUZWxlbWV0cnkge1xyXG4gICAgZWRhdGE6IElUZWxlbWV0cnlFZGF0YVxyXG4gICAgb2JqZWN0OiBhbnlcclxuICAgIHBhZ2VDb250ZXh0PzogSVRlbGVtZXRyeVBhZ2VDb250ZXh0XHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIElXc0V2ZW50VGVsZW1ldHJ5SW1wcmVzc2lvbiBleHRlbmRzIElXc0V2ZW50VGVsZW1ldHJ5IHtcclxuICAgIGVkYXRhPzogSVRlbGVtZXRyeUVkYXRhXHJcbiAgICBvYmplY3Q/OiBhbnlcclxuICAgIHBhZ2VDb250ZXh0PzogSVRlbGVtZXRyeVBhZ2VDb250ZXh0XHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIElXc0V2ZW50VGVsZW1ldHJ5U2VhcmNoIGV4dGVuZHMgSVdzRXZlbnRUZWxlbWV0cnkge1xyXG4gICAgdHlwZTogc3RyaW5nXHJcbiAgICBzdWJUeXBlPzogc3RyaW5nXHJcbiAgICBxdWVyeT86IHN0cmluZ1xyXG4gICAgZmlsdGVycz86IHN0cmluZ1xyXG4gICAgc2l6ZT86IG51bWJlclxyXG4gICAgbG9jYWxlPzogYW55XHJcbiAgfVxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVdzRXZlbnRUZWxlbWV0cnlIZWFydEJlYXQgZXh0ZW5kcyBJV3NFdmVudFRlbGVtZXRyeSB7XHJcbiAgICB0eXBlOiBzdHJpbmdcclxuICAgIC8vIHN1YlR5cGU/OiBzdHJpbmdcclxuICAgIC8vIG1vZGU6IHN0cmluZ1xyXG4gICAgaWQ6IHN0cmluZ1xyXG4gICAgLy8gbWltZVR5cGU6IHN0cmluZ1xyXG4gIH1cclxuICBleHBvcnQgdHlwZSBXc0V2ZW50VGVsZW1ldHJ5SW50ZXJhY3QgPSBJV3NFdmVudHM8SVdzRXZlbnRUZWxlbWV0cnlJbnRlcmFjdD5cclxuICBleHBvcnQgdHlwZSBXc0V2ZW50VGVsZW1ldHJ5RmVlZGJhY2sgPSBJV3NFdmVudHM8SVdzRXZlbnRUZWxlbWV0cnlGZWVkYmFjaz5cclxuICBleHBvcnQgdHlwZSBXc0V2ZW50VGVsZW1ldHJ5SW1wcmVzc2lvbiA9IElXc0V2ZW50czxJV3NFdmVudFRlbGVtZXRyeUltcHJlc3Npb24+XHJcbiAgZXhwb3J0IHR5cGUgV3NFdmVudFRlbGVtZXRyeVNlYXJjaCA9IElXc0V2ZW50czxJV3NFdmVudFRlbGVtZXRyeVNlYXJjaD5cclxuICBleHBvcnQgdHlwZSBXc0V2ZW50VGVsZW1ldHJ5SGVhcnRCZWF0ID0gSVdzRXZlbnRzPElXc0V2ZW50VGVsZW1ldHJ5SGVhcnRCZWF0PlxyXG5cclxuICAvLyBNdWx0aW1lZGlhIFRlbGVtZXRyeSBEYXRhXHJcbiAgZXhwb3J0IGVudW0gRW51bVRlbGVtZXRyeU1lZGlhQWN0aXZpdHkge1xyXG4gICAgUExBWUVEID0gJ1BMQVlFRCcsXHJcbiAgICBQQVVTRUQgPSAnUEFVU0VEJyxcclxuICAgIFNFRUtFRCA9ICdTRUVLRUQnLFxyXG4gICAgRU5ERUQgPSAnRU5ERUQnLFxyXG4gICAgVk9MVU1FX0NIQU5HRSA9ICdWT0xVTUVfQ0hBTkdFJyxcclxuICAgIE1VVEUgPSAnTVVURScsXHJcbiAgICBVTk1VVEUgPSAnVU5NVVRFJyxcclxuICAgIFBMQVlCQUNLX1NQRUVEX0NIQU5HRSA9ICdQTEFZQkFDS19TUEVFRF9DSEFOR0UnLFxyXG4gICAgRlVMTFNDUkVFTl9BQ1RJVkFURUQgPSAnRlVMTFNDUkVFTl9BQ1RJVkFURUQnLFxyXG4gICAgRlVMTFNDUkVFTl9ERUFDVElWQVRFRCA9ICdGVUxMU0NSRUVOX0RFQUNUSVZBVEVEJyxcclxuICAgIFBJQ1RVUkVfSU5fUElDVFVSRV9BQ1RJVkFURUQgPSAnUElDVFVSRV9JTl9QSUNUVVJFX0FDVElWQVRFRCcsXHJcbiAgICBQSUNUVVJFX0lOX1BJQ1RVUkVfREVBQ1RJVkFURUQgPSAnUElDVFVSRV9JTl9QSUNUVVJFX0RFQUNUSVZBVEVEJyxcclxuICAgIE5PTkUgPSAnTk9ORScsXHJcbiAgfVxyXG4gIGV4cG9ydCBlbnVtIEVudW1UZWxlbWV0cnlNZWRpYVN0YXRlIHtcclxuICAgIFBMQVlJTkcgPSAnUExBWUlORycsXHJcbiAgICBQQVVTRUQgPSAnUEFVU0VEJyxcclxuICAgIEVOREVEID0gJ0VOREVEJyxcclxuICAgIEJVRkZFUklORyA9ICdCVUZGRVJJTkcnLFxyXG4gICAgTk9UX1NUQVJURUQgPSAnTk9UX1NUQVJURUQnLFxyXG4gIH1cclxuICBleHBvcnQgaW50ZXJmYWNlIElXc0V2ZW50VGVsZW1ldHJ5TWVkaWFEYXRhIGV4dGVuZHMgSVdzRXZlbnRUZWxlbWV0cnkge1xyXG4gICAgY3VycmVudFN0YXRlOiBFbnVtVGVsZW1ldHJ5TWVkaWFTdGF0ZVxyXG4gICAgYWN0aXZpdHlUeXBlOiBFbnVtVGVsZW1ldHJ5TWVkaWFBY3Rpdml0eVxyXG4gICAgY3VycmVudFRpbWU6IG51bWJlciB8IG51bGxcclxuICAgIHRvdGFsVGltZTogbnVtYmVyIHwgbnVsbFxyXG4gICAgbWF4ZWRTZWVrZWRUaW1lOiBudW1iZXJcclxuICAgIGFjdGl2aXR5U3RhcnRlZEF0PzogRGF0ZSB8IG51bGxcclxuICB9XHJcbiAgZXhwb3J0IHR5cGUgV3NFdmVudFRlbGVtZXRyeU1lZGlhID0gSVdzRXZlbnRzPElXc0V2ZW50VGVsZW1ldHJ5TWVkaWFEYXRhPlxyXG5cclxuICBleHBvcnQgZW51bSBFbnVtVGVsZW1ldHJ5bW9kdWxlcyB7XHJcbiAgICBDT05URU5UID0gJ2NvbnRlbnQnLFxyXG4gICAgRkVFREJBQ0sgPSAnZmVlZGJhY2snLFxyXG4gICAgQ09VUlNFID0gJ2NvdXJzZScsXHJcbiAgICBQUk9HUkFNID0gJ3Byb2dyYW0nLFxyXG4gICAgRVhQTE9SRSA9ICdleHBsb3JlJyxcclxuICAgIExFQVJOID0gJ2xlYXJuJyxcclxuICAgIEhPTUUgPSAnaG9tZScsXHJcbiAgICBEQVNIQk9BUkQgPSAnZGFzaGJvYXJkJyxcclxuICAgIFNFQVJDSCA9ICdzZWFyY2gnLFxyXG4gICAgRElTQ1VTUyA9ICdEaXNjdXNzJyxcclxuICAgIENPTVBFVEVOQ1kgPSAnY29tcGV0ZW5jeScsXHJcbiAgICBFVkVOVFMgPSAnZXZlbnRzJyxcclxuICAgIENBUkVFUiA9ICdjYXJlZXInLFxyXG4gICAgUFJPRklMRSA9ICdwcm9maWxlJyxcclxuICAgIE5FVFdPUksgPSAnbmV0d29yaycsXHJcbiAgICBTVVBQT1JUID0gJ3N1cHBvcnQnLFxyXG4gICAgS0FSTUFQT0lOVFMgPSAna2FybWFwb2ludHMnLFxyXG4gICAgUExBVEZPUk1fUkFUSU5HID0gJ3BsYXRmb3JtcmF0aW5nJyxcclxuICB9XHJcbiAgZXhwb3J0IGVudW0gRW51bUludGVyYWN0VHlwZXMge1xyXG4gICAgQ0xJQ0sgPSAnY2xpY2snLFxyXG4gICAgc3ViVHlwZSA9ICdzdWJUeXBlJyxcclxuICB9XHJcbiAgZXhwb3J0IGVudW0gRW51bUludGVyYWN0U3ViVHlwZXMge1xyXG4gICAgQ09VUlNFX1RBQiA9ICdjb3Vyc2UtdGFiJyxcclxuICAgIENBUkVFUl9UQUIgPSAnY2FyZWVyLXRhYicsXHJcbiAgICBORVRXT1JLX1RBQiA9ICduZXR3b3JrLXRhYicsXHJcbiAgICBDT01QRVRFTkNZX1RBQiA9ICdjb21wZXRlbmN5LXRhYicsXHJcbiAgICBQUk9GSUxFX0VESVRfVEFCID0gJ3Byb2ZpbGUtZWRpdC10YWInLFxyXG4gICAgRElTQ1VTU19UQUIgPSAnZGlzY3Vzcy10YWInLFxyXG4gICAgRVZFTlRTX1RBQiA9ICdldmVudHMtdGFiJyxcclxuICAgIFNJREVfTUVOVSA9ICdzaWRlLW1lbnUnLFxyXG4gICAgTVlfSUdPVCA9ICdteS1pZ290JyxcclxuICAgIE1ZX0xFQVJOSU5HID0gJ215LWxlYXJuaW5nJyxcclxuICAgIFJFQ0VOVExZX0FEREVEID0gJ3JlY2VudGx5LWFkZGVkJyxcclxuICAgIFRSRU5ESU5HX0lOX1lPVVJfREVQQVJUTUVOVCA9ICd0cmVuZGluZy1pbi15b3VyLWRlcGFydG1lbnQnLFxyXG4gICAgVFJFTkRJTkdfQUNST1NTX1lPVVJfREVQQVJUTUVOVFMgPSAndHJlbmRpbmctYWNyb3NzLXlvdXItZGVwYXJ0bWVudHMnLFxyXG4gICAgTEVBUk5JTkdfVU5ERVJfMzBfTUlOVVRFUyA9ICdsZWFybmluZy11bmRlci0zMC1taW51dGVzJyxcclxuICAgIEJMRU5ERURfUFJPR1JBTSA9ICdibGVuZGVkIHByb2dyYW0nLFxyXG4gICAgUkVDRU5UX0NPTk5FQ1RJT05fUkVRVUVTVCA9ICdyZWNlbnQtY29ubmVjdGlvbi1yZXF1ZXN0JyxcclxuICAgIENFUlRJRklDQVRJT05TX09GX1RIRV9XRUVLID0gJ2NlcnRpZmljYXRpb25zLW9mLXRoZS13ZWVrJyxcclxuICAgIEhPTUVfUEFHRV9TVFJJUF9UQUJTID0gJ2hvbWUtcGFnZS1zdHJpcC10YWJzJyxcclxuICAgIEhVQl9NRU5VID0gJ2h1Yi1tZW51JyxcclxuICAgIFBPUlRBTF9OVURHRSA9ICdwb3J0YWxfbnVkZ2UnLFxyXG4gICAgQ0VSVElGSUNBVEUgPSAnY2VydGlmaWNhdGUnLFxyXG4gICAgREVGQVVMVF9TVUJUWVBFID0gJ2RlZmF1bHQtc3VidHlwZScsXHJcbiAgICBTVUdHRVNURURfQ09OTkVDVElPTlMgPSAnc3VnZ2VzdGVkLWNvbm5lY3Rpb25zJyxcclxuICAgIFBST0ZJTEUgPSAncHJvZmlsZScsXHJcbiAgICBBRERfUE9TVCA9ICdhZGQtcG9zdCcsXHJcbiAgICBUUkVORElOR19ESVNDVVNTSU9OUyA9ICd0cmVuZGluZy1kaXNjdXNzaW9ucycsXHJcbiAgICBNWV9ESVNDVVNTSU9OUyA9ICdteS1kaXNjdXNzaW9ucycsXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,294 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { WsEvents } from './event.model';
4
+ import _ from 'lodash';
5
+ import moment from 'moment';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./utility.service";
8
+ export class EventService {
9
+ constructor(environment, utilitySvc) {
10
+ this.utilitySvc = utilitySvc;
11
+ this.todaysEvents = [];
12
+ this.todaysLiveEvents = [];
13
+ this.keySpeakerEvents = [];
14
+ this.eventsSubject = new Subject();
15
+ this.events$ = this.eventsSubject.asObservable();
16
+ this.eventsChatbotSubject = new Subject();
17
+ this.chatbotEvents$ = this.eventsChatbotSubject.asObservable();
18
+ this.eventsGetStartSubject = new Subject();
19
+ this.getStartEvents$ = this.eventsGetStartSubject.asObservable();
20
+ this.eventsPRSubject = new Subject();
21
+ this.getPREvents$ = this.eventsPRSubject.asObservable();
22
+ this.environment = environment;
23
+ }
24
+ dispatchEvent(event) {
25
+ event.pageContext = this.getContext(event.pageContext);
26
+ this.eventsSubject.next(event);
27
+ }
28
+ dispatchChatbotEvent(event) {
29
+ this.eventsChatbotSubject.next(event);
30
+ }
31
+ dispatchGetStartedEvent(event) {
32
+ this.eventsGetStartSubject.next(event);
33
+ }
34
+ dispatchPlatformRatingEvent(event) {
35
+ this.eventsPRSubject.next(event);
36
+ }
37
+ raiseInteractTelemetry(edata, object, pageContext) {
38
+ this.dispatchEvent({
39
+ eventType: WsEvents.WsEventType.Telemetry,
40
+ eventLogLevel: WsEvents.WsEventLogLevel.Info,
41
+ data: {
42
+ edata,
43
+ object,
44
+ pageContext: this.getContext(pageContext),
45
+ eventSubType: WsEvents.EnumTelemetrySubType.Interact,
46
+ },
47
+ from: '',
48
+ to: 'Telemetry',
49
+ });
50
+ }
51
+ raiseFeedbackTelemetry(edata, object, from) {
52
+ this.dispatchEvent({
53
+ eventType: WsEvents.WsEventType.Telemetry,
54
+ eventLogLevel: WsEvents.WsEventLogLevel.Info,
55
+ data: {
56
+ edata,
57
+ object,
58
+ eventSubType: WsEvents.EnumTelemetrySubType.Feedback,
59
+ },
60
+ from: from || '',
61
+ to: 'Telemetry',
62
+ });
63
+ }
64
+ raiseCustomImpression(object, pageContext) {
65
+ this.dispatchEvent({
66
+ eventType: WsEvents.WsEventType.Telemetry,
67
+ eventLogLevel: WsEvents.WsEventLogLevel.Info,
68
+ data: {
69
+ object,
70
+ pageContext: this.getContext(pageContext),
71
+ eventSubType: WsEvents.EnumTelemetrySubType.Impression,
72
+ },
73
+ from: '',
74
+ to: 'Telemetry',
75
+ });
76
+ }
77
+ getContext(pageContext) {
78
+ const routeDataContext = this.utilitySvc.routeData;
79
+ const finalContext = {
80
+ pageId: routeDataContext.pageId,
81
+ module: routeDataContext.module,
82
+ };
83
+ if (pageContext) {
84
+ if (pageContext.pageIdExt) {
85
+ finalContext.pageId = `${routeDataContext.pageId}_${pageContext.pageIdExt}`;
86
+ }
87
+ else if (pageContext.pageId) {
88
+ finalContext.pageId = pageContext.pageId;
89
+ }
90
+ if (pageContext.module) {
91
+ finalContext.module = pageContext.module;
92
+ }
93
+ }
94
+ return finalContext;
95
+ }
96
+ handleTabTelemetry(subType, data, object) {
97
+ this.raiseInteractTelemetry({
98
+ subType,
99
+ type: WsEvents.EnumInteractTypes.CLICK,
100
+ id: `${_.camelCase(data.label)}-tab`,
101
+ }, {
102
+ ...object
103
+ }, {
104
+ pageIdExt: `${_.camelCase(data.label)}-tab`,
105
+ });
106
+ this.raiseCustomImpression({
107
+ context: {
108
+ position: data.index,
109
+ },
110
+ ...object
111
+ }, {
112
+ pageIdExt: `${_.camelCase(data.label)}-tab`,
113
+ });
114
+ }
115
+ getPublicUrl(url) {
116
+ const mainUrl = url.split('/content').pop() || '';
117
+ return `${this.environment.contentHost}/${this.environment.contentBucket}/content${mainUrl}`;
118
+ }
119
+ allEventDateFormat(datetime) {
120
+ const date = new Date(datetime).getDate();
121
+ const year = new Date(datetime).getFullYear();
122
+ const month = new Date(datetime).getMonth();
123
+ const hours = new Date(datetime).getHours();
124
+ const minutes = new Date(datetime).getMinutes();
125
+ const seconds = new Date(datetime).getSeconds();
126
+ const formatedDate = new Date(year, month, date, hours, minutes, seconds, 0);
127
+ const format = 'YYYY-MM-DD';
128
+ const readableDateMonth = moment(formatedDate).format(format);
129
+ const finalDateTimeValue = `${readableDateMonth}`;
130
+ return finalDateTimeValue;
131
+ }
132
+ compareDate(startDate) {
133
+ const now = new Date();
134
+ const day = ('0' + (new Date().getDate())).slice(-2);
135
+ const year = new Date().getFullYear();
136
+ const month = ('0' + (now.getMonth() + 1)).slice(-2);
137
+ const todaysdate = `${year}-${month}-${day}`;
138
+ if (startDate === todaysdate) {
139
+ return true;
140
+ }
141
+ return false;
142
+ }
143
+ customDateFormat(date, time) {
144
+ const stime = time.split('+')[0];
145
+ const hour = stime.substr(0, 2);
146
+ const min = stime.substr(2, 3);
147
+ return `${date} ${hour}${min}`;
148
+ }
149
+ sortItemByTime(eventsdata) {
150
+ return eventsdata.sort((a, b) => {
151
+ const firstDate = new Date(a.eventDate);
152
+ const secondDate = new Date(b.eventDate);
153
+ return secondDate > firstDate ? 1 : -1;
154
+ });
155
+ }
156
+ sortItemByTimeAsc(eventsdata) {
157
+ return eventsdata.sort((a, b) => {
158
+ const firstDate = new Date(a.eventDate);
159
+ const secondDate = new Date(b.eventDate);
160
+ return secondDate < firstDate ? 1 : -1;
161
+ });
162
+ }
163
+ setEventListData(eventObj) {
164
+ if (eventObj !== undefined) {
165
+ this.todaysEvents = [];
166
+ this.todaysLiveEvents = [];
167
+ this.keySpeakerEvents = [];
168
+ const data = eventObj;
169
+ let isEventLive = false;
170
+ let isEventRecording = false;
171
+ let isEventPast = false;
172
+ let isEventFuture = false;
173
+ Object.keys(data).forEach((index) => {
174
+ isEventRecording = false;
175
+ isEventLive = false;
176
+ isEventPast = false;
177
+ isEventFuture = false;
178
+ const obj = data[index];
179
+ const floor = Math.floor;
180
+ const hours = floor(obj.duration / 60);
181
+ const minutes = obj.duration % 60;
182
+ const duration = (hours === 0) ? ((minutes === 0) ? '---' : `${minutes} minutes`) : (minutes === 0) ? (hours === 1) ?
183
+ `${hours} hour` : `${hours} hours` : (hours === 1) ? `${hours} hour ${minutes} minutes` :
184
+ `${hours} hours ${minutes} minutes`;
185
+ const creatordata = obj.creatorDetails !== undefined ? obj.creatorDetails : [];
186
+ const str = creatordata && creatordata.length > 0 ? creatordata.replace(/\\/g, '') : [];
187
+ const creatorDetails = str && str.length > 0 ? JSON.parse(str) : creatordata;
188
+ const stime = obj.startTime.split('+')[0];
189
+ const hour = stime.substr(0, 2);
190
+ const min = stime.substr(2, 3);
191
+ const starttime = `${hour}${min}`;
192
+ const etime = obj.endTime.split('+')[0];
193
+ const ehour = etime.substr(0, 2);
194
+ const emin = etime.substr(2, 3);
195
+ const endtime = `${ehour}${emin}`;
196
+ const eventDate = this.customDateFormat(obj.startDate, obj.startTime);
197
+ const eventendDate = this.customDateFormat(obj.endDate, obj.endTime);
198
+ const now = new Date();
199
+ const today = moment(now).format('YYYY-MM-DD HH:mm');
200
+ if (moment(today).isBetween(eventDate, eventendDate)) {
201
+ isEventRecording = false;
202
+ isEventLive = true;
203
+ if (today >= eventendDate) {
204
+ if (obj.recordedLinks && obj.recordedLinks.length > 0) {
205
+ isEventRecording = true;
206
+ isEventLive = false;
207
+ }
208
+ }
209
+ }
210
+ else if (today >= eventendDate) {
211
+ isEventRecording = true;
212
+ isEventLive = false;
213
+ if (moment(today).isAfter(eventendDate) && moment(today).isAfter(eventDate)) {
214
+ isEventPast = true;
215
+ }
216
+ }
217
+ else {
218
+ if (moment(today).isBefore(eventDate) && moment(today).isBefore(eventendDate)) {
219
+ isEventFuture = true;
220
+ }
221
+ }
222
+ const eventDataObj = {
223
+ eventDate,
224
+ eventendDate,
225
+ isEventLive,
226
+ isEventFuture,
227
+ isEventPast,
228
+ isEventRecording,
229
+ event: obj,
230
+ eventName: obj.name,
231
+ eventStartTime: starttime,
232
+ eventEndTime: endtime,
233
+ eventStartDate: obj.startDate,
234
+ eventCreatedOn: this.allEventDateFormat(obj.createdOn),
235
+ eventDuration: duration,
236
+ eventjoined: creatorDetails.length,
237
+ eventThumbnail: obj.appIcon && (obj.appIcon !== null || obj.appIcon !== undefined) ?
238
+ this.getPublicUrl(obj.appIcon) :
239
+ '/assets/icons/Events_default.png',
240
+ pastevent: false,
241
+ };
242
+ const isToday = this.compareDate(obj.startDate);
243
+ if (isToday) {
244
+ this.todaysEvents.push(eventDataObj);
245
+ }
246
+ if (isToday && isEventLive) {
247
+ this.todaysLiveEvents.push(eventDataObj);
248
+ }
249
+ this.keySpeakerEvents.push(eventDataObj);
250
+ });
251
+ this.todaysLiveEvents = this.sortItemByTime(this.todaysLiveEvents);
252
+ this.keySpeakerEvents = this.getKeySpeakerEvents(this.keySpeakerEvents);
253
+ this.todaysEvents = this.getTodaysEvents(this.todaysEvents);
254
+ }
255
+ }
256
+ getTodaysEvents(eventData) {
257
+ let liveEvents = [];
258
+ let pastEvents = [];
259
+ let futureEvents = [];
260
+ liveEvents = this.todaysLiveEvents;
261
+ pastEvents = eventData.filter((pastEvent) => pastEvent.isEventPast);
262
+ futureEvents = eventData.filter((futureEvent) => futureEvent.isEventFuture);
263
+ liveEvents = this.sortItemByTimeAsc(liveEvents);
264
+ futureEvents = this.sortItemByTimeAsc(futureEvents);
265
+ pastEvents = this.sortItemByTime(pastEvents);
266
+ this.todaysEvents = [...liveEvents, ...futureEvents, ...pastEvents];
267
+ return this.todaysEvents;
268
+ }
269
+ getKeySpeakerEvents(eventData) {
270
+ let liveEvents = [];
271
+ let pastEvents = [];
272
+ let futureEvents = [];
273
+ liveEvents = this.todaysLiveEvents;
274
+ pastEvents = eventData.filter((pastEvent) => pastEvent.isEventPast);
275
+ futureEvents = eventData.filter((futureEvent) => futureEvent.isEventFuture);
276
+ liveEvents = this.sortItemByTimeAsc(liveEvents);
277
+ futureEvents = this.sortItemByTimeAsc(futureEvents);
278
+ pastEvents = this.sortItemByTime(pastEvents);
279
+ this.keySpeakerEvents = [...liveEvents, ...futureEvents, ...pastEvents];
280
+ return this.keySpeakerEvents;
281
+ }
282
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EventService, deps: [{ token: 'environment' }, { token: i1.UtilityService }], target: i0.ɵɵFactoryTarget.Injectable }); }
283
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EventService, providedIn: 'root' }); }
284
+ }
285
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EventService, decorators: [{
286
+ type: Injectable,
287
+ args: [{
288
+ providedIn: 'root',
289
+ }]
290
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
291
+ type: Inject,
292
+ args: ['environment']
293
+ }] }, { type: i1.UtilityService }]; } });
294
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcnkvc3VuYmlyZC1jYi91dGlscy12Mi9zcmMvbGliL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM5QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBR3hDLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQTtBQUN0QixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUE7OztBQUkzQixNQUFNLE9BQU8sWUFBWTtJQWtCdkIsWUFDeUIsV0FBZ0IsRUFDL0IsVUFBMEI7UUFBMUIsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFuQnBDLGlCQUFZLEdBQVEsRUFBRSxDQUFBO1FBQ3RCLHFCQUFnQixHQUFRLEVBQUUsQ0FBQTtRQUMxQixxQkFBZ0IsR0FBUSxFQUFFLENBQUE7UUFFbEIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQTtRQUN2RCxZQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUUxQyx5QkFBb0IsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQTtRQUM5RCxtQkFBYyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUV4RCwwQkFBcUIsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQTtRQUMvRCxvQkFBZSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUUxRCxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUEyQixDQUFBO1FBQ3pELGlCQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQU92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QUFDLENBQUE7UUFDL0MsWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNuRCxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUM1QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLFlBQVksRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFBO1FBRXZFLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFBO0lBQzlCLENBQUM7K0dBbFZVLFlBQVksa0JBbUJiLGFBQWE7bUhBbkJaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBb0JJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJ1xyXG5pbXBvcnQgeyBXc0V2ZW50cyB9IGZyb20gJy4vZXZlbnQubW9kZWwnXHJcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi91dGlsaXR5LnNlcnZpY2UnXHJcbi8qIHRzbGludDpkaXNhYmxlKi9cclxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJ1xyXG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCdcclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEV2ZW50U2VydmljZSB7XHJcbiAgdG9kYXlzRXZlbnRzOiBhbnkgPSBbXVxyXG4gIHRvZGF5c0xpdmVFdmVudHM6IGFueSA9IFtdXHJcbiAga2V5U3BlYWtlckV2ZW50czogYW55ID0gW11cclxuXHJcbiAgcHJpdmF0ZSBldmVudHNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8V3NFdmVudHMuSVdzRXZlbnRzPGFueT4+KClcclxuICBwdWJsaWMgZXZlbnRzJCA9IHRoaXMuZXZlbnRzU3ViamVjdC5hc09ic2VydmFibGUoKVxyXG5cclxuICBwcml2YXRlIGV2ZW50c0NoYXRib3RTdWJqZWN0ID0gbmV3IFN1YmplY3Q8V3NFdmVudHMuSVdzRXZlbnRzPGFueT4+KClcclxuICBwdWJsaWMgY2hhdGJvdEV2ZW50cyQgPSB0aGlzLmV2ZW50c0NoYXRib3RTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpXHJcblxyXG4gIHByaXZhdGUgZXZlbnRzR2V0U3RhcnRTdWJqZWN0ID0gbmV3IFN1YmplY3Q8V3NFdmVudHMuSVdzRXZlbnRzPGFueT4+KClcclxuICBwdWJsaWMgZ2V0U3RhcnRFdmVudHMkID0gdGhpcy5ldmVudHNHZXRTdGFydFN1YmplY3QuYXNPYnNlcnZhYmxlKClcclxuXHJcbiAgcHJpdmF0ZSBldmVudHNQUlN1YmplY3QgPSBuZXcgU3ViamVjdDxXc0V2ZW50cy5JV3NFdmVudHM8YW55Pj4oKVxyXG4gIHB1YmxpYyBnZXRQUkV2ZW50cyQgPSB0aGlzLmV2ZW50c1BSU3ViamVjdC5hc09ic2VydmFibGUoKVxyXG5cclxuICBlbnZpcm9ubWVudDogYW55XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIGVudmlyb25tZW50OiBhbnksXHJcbiAgICBwcml2YXRlIHV0aWxpdHlTdmM6IFV0aWxpdHlTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50XHJcbiAgICAvLyB0aGlzLmZvY3VzQ2hhbmdlRXZlbnRMaXN0ZW5lcigpXHJcbiAgfVxyXG5cclxuICBkaXNwYXRjaEV2ZW50PFQ+KGV2ZW50OiBXc0V2ZW50cy5JV3NFdmVudHM8VD4pIHtcclxuICAgIGV2ZW50LnBhZ2VDb250ZXh0ID0gdGhpcy5nZXRDb250ZXh0KGV2ZW50LnBhZ2VDb250ZXh0KVxyXG4gICAgdGhpcy5ldmVudHNTdWJqZWN0Lm5leHQoZXZlbnQpXHJcbiAgfVxyXG5cclxuICBkaXNwYXRjaENoYXRib3RFdmVudDxUPihldmVudDogV3NFdmVudHMuSVdzRXZlbnRzPFQ+KSB7XHJcbiAgICB0aGlzLmV2ZW50c0NoYXRib3RTdWJqZWN0Lm5leHQoZXZlbnQpXHJcbiAgfVxyXG5cclxuICBkaXNwYXRjaEdldFN0YXJ0ZWRFdmVudDxUPihldmVudDogV3NFdmVudHMuSVdzRXZlbnRzPFQ+KSB7XHJcbiAgICB0aGlzLmV2ZW50c0dldFN0YXJ0U3ViamVjdC5uZXh0KGV2ZW50KVxyXG4gIH1cclxuXHJcbiAgZGlzcGF0Y2hQbGF0Zm9ybVJhdGluZ0V2ZW50PFQ+KGV2ZW50OiBXc0V2ZW50cy5JV3NFdmVudHM8VD4pIHtcclxuICAgIHRoaXMuZXZlbnRzUFJTdWJqZWN0Lm5leHQoZXZlbnQpXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gaGVscGVyIGZ1bmN0aW9uc1xyXG4gIHJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoZWRhdGE6IFdzRXZlbnRzLklUZWxlbWV0cnlFZGF0YSwgb2JqZWN0OiBhbnksIHBhZ2VDb250ZXh0PzogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0KSB7XHJcbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQ8V3NFdmVudHMuSVdzRXZlbnRUZWxlbWV0cnlJbnRlcmFjdD4oe1xyXG4gICAgICBldmVudFR5cGU6IFdzRXZlbnRzLldzRXZlbnRUeXBlLlRlbGVtZXRyeSxcclxuICAgICAgZXZlbnRMb2dMZXZlbDogV3NFdmVudHMuV3NFdmVudExvZ0xldmVsLkluZm8sXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBlZGF0YSxcclxuICAgICAgICBvYmplY3QsXHJcbiAgICAgICAgcGFnZUNvbnRleHQ6IHRoaXMuZ2V0Q29udGV4dChwYWdlQ29udGV4dCksXHJcbiAgICAgICAgZXZlbnRTdWJUeXBlOiBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdCxcclxuICAgICAgfSxcclxuICAgICAgZnJvbTogJycsXHJcbiAgICAgIHRvOiAnVGVsZW1ldHJ5JyxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICByYWlzZUZlZWRiYWNrVGVsZW1ldHJ5KGVkYXRhOiBXc0V2ZW50cy5JVGVsZW1ldHJ5RWRhdGEsIG9iamVjdDogYW55LCBmcm9tPzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQ8V3NFdmVudHMuSVdzRXZlbnRUZWxlbWV0cnlJbnRlcmFjdD4oe1xyXG4gICAgICBldmVudFR5cGU6IFdzRXZlbnRzLldzRXZlbnRUeXBlLlRlbGVtZXRyeSxcclxuICAgICAgZXZlbnRMb2dMZXZlbDogV3NFdmVudHMuV3NFdmVudExvZ0xldmVsLkluZm8sXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBlZGF0YSxcclxuICAgICAgICBvYmplY3QsXHJcbiAgICAgICAgZXZlbnRTdWJUeXBlOiBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5GZWVkYmFjayxcclxuICAgICAgfSxcclxuICAgICAgZnJvbTogZnJvbSB8fCAnJyxcclxuICAgICAgdG86ICdUZWxlbWV0cnknLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIC8vIFJhaXNlIGN1c3RvbSBpbXByZXNzaW9uIGV2ZW50cyBlZzpvbiB0YWIgY2hhbmdlXHJcbiAgcmFpc2VDdXN0b21JbXByZXNzaW9uKG9iamVjdDogYW55LCBwYWdlQ29udGV4dD86IFdzRXZlbnRzLklUZWxlbWV0cnlQYWdlQ29udGV4dCkge1xyXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50PFdzRXZlbnRzLklXc0V2ZW50VGVsZW1ldHJ5SW1wcmVzc2lvbj4oe1xyXG4gICAgICBldmVudFR5cGU6IFdzRXZlbnRzLldzRXZlbnRUeXBlLlRlbGVtZXRyeSxcclxuICAgICAgZXZlbnRMb2dMZXZlbDogV3NFdmVudHMuV3NFdmVudExvZ0xldmVsLkluZm8sXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBvYmplY3QsXHJcbiAgICAgICAgcGFnZUNvbnRleHQ6IHRoaXMuZ2V0Q29udGV4dChwYWdlQ29udGV4dCksXHJcbiAgICAgICAgZXZlbnRTdWJUeXBlOiBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbXByZXNzaW9uLFxyXG4gICAgICB9LFxyXG4gICAgICBmcm9tOiAnJyxcclxuICAgICAgdG86ICdUZWxlbWV0cnknLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIC8vIHByaXZhdGUgZm9jdXNDaGFuZ2VFdmVudExpc3RlbmVyKCkge1xyXG4gIC8vICAgZnJvbUV2ZW50KHdpbmRvdywgJ2ZvY3VzJykuc3Vic2NyaWJlKCgpID0+IHtcclxuICAvLyAgICAgdGhpcy5yYWlzZUludGVyYWN0VGVsZW1ldHJ5KCdmb2N1cycsICdnYWluZWQnLCB7fSlcclxuICAvLyAgIH0pXHJcbiAgLy8gICBmcm9tRXZlbnQod2luZG93LCAnYmx1cicpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgLy8gICAgIHRoaXMucmFpc2VJbnRlcmFjdFRlbGVtZXRyeSgnZm9jdXMnLCAnbG9zdCcsIHt9KVxyXG4gIC8vICAgfSlcclxuICAvLyB9XHJcblxyXG4gIC8vIE1ldGhvZCB0byBnZXQgdGhlIGNvbnRleHQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRlbGVtZXRyeSBpbnRlcmFjdCBldmVudFxyXG4gIHByaXZhdGUgZ2V0Q29udGV4dChwYWdlQ29udGV4dDogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0IHwgdW5kZWZpbmVkKTogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0IHtcclxuICAgIGNvbnN0IHJvdXRlRGF0YUNvbnRleHQgPSB0aGlzLnV0aWxpdHlTdmMucm91dGVEYXRhXHJcbiAgICAvLyBpbml0aWFsaXplIHdpdGggdGhlIHJvdXRlIGRhdGEgY29uZmlndXJhdGlvbiAtIGN1cnJlbnQgcm91dGUncyBwYWdlSUQgJiBtb2R1bGVcclxuICAgIGNvbnN0IGZpbmFsQ29udGV4dDogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0ID0ge1xyXG4gICAgICBwYWdlSWQ6IHJvdXRlRGF0YUNvbnRleHQucGFnZUlkLFxyXG4gICAgICBtb2R1bGU6IHJvdXRlRGF0YUNvbnRleHQubW9kdWxlLFxyXG4gICAgfVxyXG4gICAgaWYgKHBhZ2VDb250ZXh0KSB7XHJcbiAgICAgIC8vIGlmIGNvbnRleHQgaGFzIHBhZ2VJZEV4dCwgYXBwZW5kIGl0IHRvIHRoZSByb3V0ZSdzIHBhZ2VJZFxyXG4gICAgICBpZiAocGFnZUNvbnRleHQucGFnZUlkRXh0KSB7XHJcbiAgICAgICAgZmluYWxDb250ZXh0LnBhZ2VJZCA9IGAke3JvdXRlRGF0YUNvbnRleHQucGFnZUlkfV8ke3BhZ2VDb250ZXh0LnBhZ2VJZEV4dH1gXHJcbiAgICAgIH0gZWxzZSBpZiAocGFnZUNvbnRleHQucGFnZUlkKSB7XHJcbiAgICAgICAgLy8gZWxzZSBjb250ZXh0IGhhcyBwYWdlSWQsIG92ZXJyaWRlIGl0IHRvIHRoZSBmaW5hbCBwYWdlSURcclxuICAgICAgICBmaW5hbENvbnRleHQucGFnZUlkID0gcGFnZUNvbnRleHQucGFnZUlkXHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgY29udGV4dCBoYXMgbW9kdWxlLCBvdmVycmlkZSBpdCB0byB0aGUgZmluYWwgbW9kdWxlXHJcbiAgICAgIGlmIChwYWdlQ29udGV4dC5tb2R1bGUpIHtcclxuICAgICAgICBmaW5hbENvbnRleHQubW9kdWxlID0gcGFnZUNvbnRleHQubW9kdWxlXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmluYWxDb250ZXh0XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlVGFiVGVsZW1ldHJ5KHN1YlR5cGU6IHN0cmluZywgZGF0YTogV3NFdmVudHMuSVRlbGVtZXRyeVRhYkRhdGEsIG9iamVjdD86IGFueSkge1xyXG4gICAgLy8gcmFpc2UgYSB0YWIgY2xpY2sgaW50ZXJhY3QgZXZlbnRcclxuICAgIHRoaXMucmFpc2VJbnRlcmFjdFRlbGVtZXRyeShcclxuICAgICAge1xyXG4gICAgICAgIHN1YlR5cGUsXHJcbiAgICAgICAgdHlwZTogV3NFdmVudHMuRW51bUludGVyYWN0VHlwZXMuQ0xJQ0ssXHJcbiAgICAgICAgaWQ6IGAke18uY2FtZWxDYXNlKGRhdGEubGFiZWwpfS10YWJgLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgLy8gY29udGV4dDoge1xyXG4gICAgICAgIC8vICAgcG9zaXRpb246IGRhdGEuaW5kZXgsXHJcbiAgICAgICAgLy8gfSxcclxuICAgICAgICAuLi5vYmplY3RcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHBhZ2VJZEV4dDogYCR7Xy5jYW1lbENhc2UoZGF0YS5sYWJlbCl9LXRhYmAsXHJcbiAgICAgIH0pXHJcblxyXG4gICAgLy8gcmFpc2UgYSB0YWIgY2xpY2sgaW1wcmVzc2lvbiBldmVudFxyXG4gICAgdGhpcy5yYWlzZUN1c3RvbUltcHJlc3Npb24oe1xyXG4gICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgcG9zaXRpb246IGRhdGEuaW5kZXgsXHJcbiAgICAgIH0sXHJcbiAgICAgIC4uLm9iamVjdFxyXG4gICAgfSwge1xyXG4gICAgICBwYWdlSWRFeHQ6IGAke18uY2FtZWxDYXNlKGRhdGEubGFiZWwpfS10YWJgLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGdldFB1YmxpY1VybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBtYWluVXJsID0gdXJsLnNwbGl0KCcvY29udGVudCcpLnBvcCgpIHx8ICcnXHJcbiAgICByZXR1cm4gYCR7dGhpcy5lbnZpcm9ubWVudC5jb250ZW50SG9zdH0vJHt0aGlzLmVudmlyb25tZW50LmNvbnRlbnRCdWNrZXR9L2NvbnRlbnQke21haW5Vcmx9YFxyXG4gIH1cclxuXHJcbiAgYWxsRXZlbnREYXRlRm9ybWF0KGRhdGV0aW1lOiBhbnkpIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShkYXRldGltZSkuZ2V0RGF0ZSgpXHJcbiAgICBjb25zdCB5ZWFyID0gbmV3IERhdGUoZGF0ZXRpbWUpLmdldEZ1bGxZZWFyKClcclxuICAgIGNvbnN0IG1vbnRoID0gbmV3IERhdGUoZGF0ZXRpbWUpLmdldE1vbnRoKClcclxuICAgIGNvbnN0IGhvdXJzID0gbmV3IERhdGUoZGF0ZXRpbWUpLmdldEhvdXJzKClcclxuICAgIGNvbnN0IG1pbnV0ZXMgPSBuZXcgRGF0ZShkYXRldGltZSkuZ2V0TWludXRlcygpXHJcbiAgICBjb25zdCBzZWNvbmRzID0gbmV3IERhdGUoZGF0ZXRpbWUpLmdldFNlY29uZHMoKVxyXG4gICAgY29uc3QgZm9ybWF0ZWREYXRlID0gbmV3IERhdGUoeWVhciwgbW9udGgsIGRhdGUsIGhvdXJzLCBtaW51dGVzLCBzZWNvbmRzLCAwKVxyXG4gICAgLy8gbGV0IGZvcm1hdCA9ICdZWVlZLU1NLUREIGhoOm1tIGEnXHJcbiAgICAvLyBpZiAoIXRpbWVBbGxvdykge1xyXG4gICAgY29uc3QgZm9ybWF0ID0gJ1lZWVktTU0tREQnXHJcbiAgICAvLyB9XHJcbiAgICBjb25zdCByZWFkYWJsZURhdGVNb250aCA9IG1vbWVudChmb3JtYXRlZERhdGUpLmZvcm1hdChmb3JtYXQpXHJcbiAgICBjb25zdCBmaW5hbERhdGVUaW1lVmFsdWUgPSBgJHtyZWFkYWJsZURhdGVNb250aH1gXHJcbiAgICByZXR1cm4gZmluYWxEYXRlVGltZVZhbHVlXHJcbiAgfVxyXG5cclxuICBjb21wYXJlRGF0ZShzdGFydERhdGU6IGFueSkge1xyXG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKVxyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpwcmVmZXItdGVtcGxhdGVcclxuICAgIGNvbnN0IGRheSA9ICgnMCcgKyAobmV3IERhdGUoKS5nZXREYXRlKCkpKS5zbGljZSgtMilcclxuICAgIGNvbnN0IHllYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKClcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpwcmVmZXItdGVtcGxhdGVcclxuICAgIGNvbnN0IG1vbnRoID0gKCcwJyArIChub3cuZ2V0TW9udGgoKSArIDEpKS5zbGljZSgtMilcclxuICAgIGNvbnN0IHRvZGF5c2RhdGUgPSBgJHt5ZWFyfS0ke21vbnRofS0ke2RheX1gXHJcbiAgICBpZiAoc3RhcnREYXRlID09PSB0b2RheXNkYXRlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlXHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2VcclxuICB9XHJcblxyXG4gIGN1c3RvbURhdGVGb3JtYXQoZGF0ZTogYW55LCB0aW1lOiBhbnkpIHtcclxuICAgIGNvbnN0IHN0aW1lID0gdGltZS5zcGxpdCgnKycpWzBdXHJcbiAgICBjb25zdCBob3VyID0gc3RpbWUuc3Vic3RyKDAsIDIpXHJcbiAgICBjb25zdCBtaW4gPSBzdGltZS5zdWJzdHIoMiwgMylcclxuICAgIHJldHVybiBgJHtkYXRlfSAke2hvdXJ9JHttaW59YFxyXG4gIH1cclxuICBzb3J0SXRlbUJ5VGltZShldmVudHNkYXRhOiBhbnkpIHtcclxuICAgIHJldHVybiBldmVudHNkYXRhLnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGZpcnN0RGF0ZTogYW55ID0gbmV3IERhdGUoYS5ldmVudERhdGUpXHJcbiAgICAgIGNvbnN0IHNlY29uZERhdGU6IGFueSA9IG5ldyBEYXRlKGIuZXZlbnREYXRlKVxyXG4gICAgICByZXR1cm4gc2Vjb25kRGF0ZSA+IGZpcnN0RGF0ZSA/IDEgOiAtMVxyXG4gICAgfSlcclxuICB9XHJcbiAgc29ydEl0ZW1CeVRpbWVBc2MoZXZlbnRzZGF0YTogYW55KSB7XHJcbiAgICByZXR1cm4gZXZlbnRzZGF0YS5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBmaXJzdERhdGU6IGFueSA9IG5ldyBEYXRlKGEuZXZlbnREYXRlKVxyXG4gICAgICBjb25zdCBzZWNvbmREYXRlOiBhbnkgPSBuZXcgRGF0ZShiLmV2ZW50RGF0ZSlcclxuICAgICAgcmV0dXJuIHNlY29uZERhdGUgPCBmaXJzdERhdGUgPyAxIDogLTFcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuXHJcbiAgc2V0RXZlbnRMaXN0RGF0YShldmVudE9iajogYW55KSB7XHJcbiAgICBpZiAoZXZlbnRPYmogIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnRvZGF5c0V2ZW50cyA9IFtdXHJcbiAgICAgIHRoaXMudG9kYXlzTGl2ZUV2ZW50cyA9IFtdXHJcbiAgICAgIHRoaXMua2V5U3BlYWtlckV2ZW50cyA9IFtdXHJcbiAgICAgIGNvbnN0IGRhdGEgPSBldmVudE9ialxyXG4gICAgICBsZXQgaXNFdmVudExpdmU6IGJvb2xlYW4gPSBmYWxzZVxyXG4gICAgICBsZXQgaXNFdmVudFJlY29yZGluZzogYm9vbGVhbiA9IGZhbHNlXHJcbiAgICAgIGxldCBpc0V2ZW50UGFzdDogYm9vbGVhbiA9IGZhbHNlXHJcbiAgICAgIGxldCBpc0V2ZW50RnV0dXJlOiBib29sZWFuID0gZmFsc2VcclxuICAgICAgLy8gY29uc29sZS5sb2coJ3N0cmlwIGNvbXAnLCBkYXRhKVxyXG4gICAgICBPYmplY3Qua2V5cyhkYXRhKS5mb3JFYWNoKChpbmRleDogYW55KSA9PiB7XHJcblxyXG4gICAgICAgIGlzRXZlbnRSZWNvcmRpbmcgPSBmYWxzZVxyXG4gICAgICAgIGlzRXZlbnRMaXZlID0gZmFsc2VcclxuICAgICAgICBpc0V2ZW50UGFzdCA9IGZhbHNlXHJcbiAgICAgICAgaXNFdmVudEZ1dHVyZSA9IGZhbHNlXHJcbiAgICAgICAgY29uc3Qgb2JqID0gZGF0YVtpbmRleF1cclxuICAgICAgICBjb25zdCBmbG9vciA9IE1hdGguZmxvb3JcclxuICAgICAgICBjb25zdCBob3VycyA9IGZsb29yKG9iai5kdXJhdGlvbiAvIDYwKVxyXG4gICAgICAgIGNvbnN0IG1pbnV0ZXMgPSBvYmouZHVyYXRpb24gJSA2MFxyXG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gKGhvdXJzID09PSAwKSA/ICgobWludXRlcyA9PT0gMCkgPyAnLS0tJyA6IGAke21pbnV0ZXN9IG1pbnV0ZXNgKSA6IChtaW51dGVzID09PSAwKSA/IChob3VycyA9PT0gMSkgP1xyXG4gICAgICAgICAgYCR7aG91cnN9IGhvdXJgIDogYCR7aG91cnN9IGhvdXJzYCA6IChob3VycyA9PT0gMSkgPyBgJHtob3Vyc30gaG91ciAke21pbnV0ZXN9IG1pbnV0ZXNgIDpcclxuICAgICAgICAgIGAke2hvdXJzfSBob3VycyAke21pbnV0ZXN9IG1pbnV0ZXNgXHJcbiAgICAgICAgY29uc3QgY3JlYXRvcmRhdGEgPSBvYmouY3JlYXRvckRldGFpbHMgIT09IHVuZGVmaW5lZCA/IG9iai5jcmVhdG9yRGV0YWlscyA6IFtdXHJcbiAgICAgICAgY29uc3Qgc3RyID0gY3JlYXRvcmRhdGEgJiYgY3JlYXRvcmRhdGEubGVuZ3RoID4gMCA/IGNyZWF0b3JkYXRhLnJlcGxhY2UoL1xcXFwvZywgJycpIDogW11cclxuICAgICAgICBjb25zdCBjcmVhdG9yRGV0YWlscyA9IHN0ciAmJiBzdHIubGVuZ3RoID4gMCA/IEpTT04ucGFyc2Uoc3RyKSA6IGNyZWF0b3JkYXRhXHJcblxyXG4gICAgICAgIGNvbnN0IHN0aW1lID0gb2JqLnN0YXJ0VGltZS5zcGxpdCgnKycpWzBdXHJcbiAgICAgICAgY29uc3QgaG91ciA9IHN0aW1lLnN1YnN0cigwLCAyKVxyXG4gICAgICAgIGNvbnN0IG1pbiA9IHN0aW1lLnN1YnN0cigyLCAzKVxyXG4gICAgICAgIGNvbnN0IHN0YXJ0dGltZSA9IGAke2hvdXJ9JHttaW59YFxyXG5cclxuICAgICAgICBjb25zdCBldGltZSA9IG9iai5lbmRUaW1lLnNwbGl0KCcrJylbMF1cclxuICAgICAgICBjb25zdCBlaG91ciA9IGV0aW1lLnN1YnN0cigwLCAyKVxyXG4gICAgICAgIGNvbnN0IGVtaW4gPSBldGltZS5zdWJzdHIoMiwgMylcclxuICAgICAgICBjb25zdCBlbmR0aW1lID0gYCR7ZWhvdXJ9JHtlbWlufWBcclxuICAgICAgICBjb25zdCBldmVudERhdGUgPSB0aGlzLmN1c3RvbURhdGVGb3JtYXQob2JqLnN0YXJ0RGF0ZSwgb2JqLnN0YXJ0VGltZSlcclxuICAgICAgICBjb25zdCBldmVudGVuZERhdGUgPSB0aGlzLmN1c3RvbURhdGVGb3JtYXQob2JqLmVuZERhdGUsIG9iai5lbmRUaW1lKVxyXG4gICAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKClcclxuICAgICAgICBjb25zdCB0b2RheSA9IG1vbWVudChub3cpLmZvcm1hdCgnWVlZWS1NTS1ERCBISDptbScpXHJcbiAgICAgICAgaWYgKG1vbWVudCh0b2RheSkuaXNCZXR3ZWVuKGV2ZW50RGF0ZSwgZXZlbnRlbmREYXRlKSkge1xyXG4gICAgICAgICAgaXNFdmVudFJlY29yZGluZyA9IGZhbHNlXHJcbiAgICAgICAgICBpc0V2ZW50TGl2ZSA9IHRydWVcclxuICAgICAgICAgIGlmICh0b2RheSA+PSBldmVudGVuZERhdGUpIHtcclxuICAgICAgICAgICAgaWYgKG9iai5yZWNvcmRlZExpbmtzICYmIG9iai5yZWNvcmRlZExpbmtzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICBpc0V2ZW50UmVjb3JkaW5nID0gdHJ1ZVxyXG4gICAgICAgICAgICAgIGlzRXZlbnRMaXZlID0gZmFsc2VcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSBpZiAodG9kYXkgPj0gZXZlbnRlbmREYXRlKSB7XHJcbiAgICAgICAgICBpc0V2ZW50UmVjb3JkaW5nID0gdHJ1ZVxyXG4gICAgICAgICAgaXNFdmVudExpdmUgPSBmYWxzZVxyXG4gICAgICAgICAgaWYgKG1vbWVudCh0b2RheSkuaXNBZnRlcihldmVudGVuZERhdGUpICYmIG1vbWVudCh0b2RheSkuaXNBZnRlcihldmVudERhdGUpKSB7XHJcbiAgICAgICAgICAgIGlzRXZlbnRQYXN0ID0gdHJ1ZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAobW9tZW50KHRvZGF5KS5pc0JlZm9yZShldmVudERhdGUpICYmIG1vbWVudCh0b2RheSkuaXNCZWZvcmUoZXZlbnRlbmREYXRlKSkge1xyXG4gICAgICAgICAgICBpc0V2ZW50RnV0dXJlID0gdHJ1ZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBldmVudERhdGFPYmogPSB7XHJcbiAgICAgICAgICBldmVudERhdGUsXHJcbiAgICAgICAgICBldmVudGVuZERhdGUsXHJcbiAgICAgICAgICBpc0V2ZW50TGl2ZSxcclxuICAgICAgICAgIGlzRXZlbnRGdXR1cmUsXHJcbiAgICAgICAgICBpc0V2ZW50UGFzdCxcclxuICAgICAgICAgIGlzRXZlbnRSZWNvcmRpbmcsXHJcbiAgICAgICAgICBldmVudDogb2JqLFxyXG4gICAgICAgICAgZXZlbnROYW1lOiBvYmoubmFtZSxcclxuICAgICAgICAgIGV2ZW50U3RhcnRUaW1lOiBzdGFydHRpbWUsXHJcbiAgICAgICAgICBldmVudEVuZFRpbWU6IGVuZHRpbWUsXHJcbiAgICAgICAgICBldmVudFN0YXJ0RGF0ZTogb2JqLnN0YXJ0RGF0ZSxcclxuICAgICAgICAgIGV2ZW50Q3JlYXRlZE9uOiB0aGlzLmFsbEV2ZW50RGF0ZUZvcm1hdChvYmouY3JlYXRlZE9uKSxcclxuICAgICAgICAgIGV2ZW50RHVyYXRpb246IGR1cmF0aW9uLFxyXG4gICAgICAgICAgZXZlbnRqb2luZWQ6IGNyZWF0b3JEZXRhaWxzLmxlbmd0aCxcclxuICAgICAgICAgIGV2ZW50VGh1bWJuYWlsOiBvYmouYXBwSWNvbiAmJiAob2JqLmFwcEljb24gIT09IG51bGwgfHwgb2JqLmFwcEljb24gIT09IHVuZGVmaW5lZCkgP1xyXG4gICAgICAgICAgICB0aGlzLmdldFB1YmxpY1VybChvYmouYXBwSWNvbikgOlxyXG4gICAgICAgICAgICAnL2Fzc2V0cy9pY29ucy9FdmVudHNfZGVmYXVsdC5wbmcnLFxyXG4gICAgICAgICAgcGFzdGV2ZW50OiBmYWxzZSxcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgaXNUb2RheSA9IHRoaXMuY29tcGFyZURhdGUob2JqLnN0YXJ0RGF0ZSlcclxuICAgICAgICBpZiAoaXNUb2RheSkge1xyXG4gICAgICAgICAgdGhpcy50b2RheXNFdmVudHMucHVzaChldmVudERhdGFPYmopXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChpc1RvZGF5ICYmIGlzRXZlbnRMaXZlKSB7XHJcbiAgICAgICAgICB0aGlzLnRvZGF5c0xpdmVFdmVudHMucHVzaChldmVudERhdGFPYmopXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMua2V5U3BlYWtlckV2ZW50cy5wdXNoKGV2ZW50RGF0YU9iailcclxuICAgICAgfSlcclxuXHJcbiAgICAgIHRoaXMudG9kYXlzTGl2ZUV2ZW50cyA9IHRoaXMuc29ydEl0ZW1CeVRpbWUodGhpcy50b2RheXNMaXZlRXZlbnRzKVxyXG4gICAgICB0aGlzLmtleVNwZWFrZXJFdmVudHMgPSB0aGlzLmdldEtleVNwZWFrZXJFdmVudHModGhpcy5rZXlTcGVha2VyRXZlbnRzKVxyXG4gICAgICB0aGlzLnRvZGF5c0V2ZW50cyA9IHRoaXMuZ2V0VG9kYXlzRXZlbnRzKHRoaXMudG9kYXlzRXZlbnRzKVxyXG5cclxuICAgIH1cclxuICB9XHJcbiAgZ2V0VG9kYXlzRXZlbnRzKGV2ZW50RGF0YTogYW55KSB7XHJcbiAgICBsZXQgbGl2ZUV2ZW50czogYW55ID0gW11cclxuICAgIGxldCBwYXN0RXZlbnRzOiBhbnkgPSBbXVxyXG4gICAgbGV0IGZ1dHVyZUV2ZW50czogYW55ID0gW11cclxuXHJcbiAgICBsaXZlRXZlbnRzID0gdGhpcy50b2RheXNMaXZlRXZlbnRzXHJcbiAgICBwYXN0RXZlbnRzID0gZXZlbnREYXRhLmZpbHRlcigocGFzdEV2ZW50OiBhbnkpID0+IHBhc3RFdmVudC5pc0V2ZW50UGFzdClcclxuICAgIGZ1dHVyZUV2ZW50cyA9IGV2ZW50RGF0YS5maWx0ZXIoKGZ1dHVyZUV2ZW50OiBhbnkpID0+IGZ1dHVyZUV2ZW50LmlzRXZlbnRGdXR1cmUpXHJcbiAgICBsaXZlRXZlbnRzID0gdGhpcy5zb3J0SXRlbUJ5VGltZUFzYyhsaXZlRXZlbnRzKVxyXG4gICAgZnV0dXJlRXZlbnRzID0gdGhpcy5zb3J0SXRlbUJ5VGltZUFzYyhmdXR1cmVFdmVudHMpXHJcbiAgICBwYXN0RXZlbnRzID0gdGhpcy5zb3J0SXRlbUJ5VGltZShwYXN0RXZlbnRzKVxyXG4gICAgdGhpcy50b2RheXNFdmVudHMgPSBbLi4ubGl2ZUV2ZW50cywgLi4uZnV0dXJlRXZlbnRzLCAuLi5wYXN0RXZlbnRzXVxyXG5cclxuICAgIHJldHVybiB0aGlzLnRvZGF5c0V2ZW50c1xyXG4gIH1cclxuXHJcbiAgZ2V0S2V5U3BlYWtlckV2ZW50cyhldmVudERhdGE6IGFueSkge1xyXG4gICAgbGV0IGxpdmVFdmVudHM6IGFueSA9IFtdXHJcbiAgICBsZXQgcGFzdEV2ZW50czogYW55ID0gW11cclxuICAgIGxldCBmdXR1cmVFdmVudHM6IGFueSA9IFtdXHJcblxyXG4gICAgbGl2ZUV2ZW50cyA9IHRoaXMudG9kYXlzTGl2ZUV2ZW50c1xyXG4gICAgcGFzdEV2ZW50cyA9IGV2ZW50RGF0YS5maWx0ZXIoKHBhc3RFdmVudDogYW55KSA9PiBwYXN0RXZlbnQuaXNFdmVudFBhc3QpXHJcbiAgICBmdXR1cmVFdmVudHMgPSBldmVudERhdGEuZmlsdGVyKChmdXR1cmVFdmVudDogYW55KSA9PiBmdXR1cmVFdmVudC5pc0V2ZW50RnV0dXJlKVxyXG4gICAgbGl2ZUV2ZW50cyA9IHRoaXMuc29ydEl0ZW1CeVRpbWVBc2MobGl2ZUV2ZW50cylcclxuICAgIGZ1dHVyZUV2ZW50cyA9IHRoaXMuc29ydEl0ZW1CeVRpbWVBc2MoZnV0dXJlRXZlbnRzKVxyXG4gICAgcGFzdEV2ZW50cyA9IHRoaXMuc29ydEl0ZW1CeVRpbWUocGFzdEV2ZW50cylcclxuICAgIHRoaXMua2V5U3BlYWtlckV2ZW50cyA9IFsuLi5saXZlRXZlbnRzLCAuLi5mdXR1cmVFdmVudHMsIC4uLnBhc3RFdmVudHNdXHJcblxyXG4gICAgcmV0dXJuIHRoaXMua2V5U3BlYWtlckV2ZW50c1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,45 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./configurations.service";
4
+ export class LoggerService {
5
+ constructor(configSvc) {
6
+ this.configSvc = configSvc;
7
+ this.consoleError = console.error;
8
+ this.consoleInfo = console.info;
9
+ this.consoleLog = console.log;
10
+ this.consoleWarn = console.warn;
11
+ this.noConsole = () => { };
12
+ }
13
+ get error() {
14
+ return this.consoleError;
15
+ }
16
+ get info() {
17
+ return this.configSvc.isProduction ? this.noConsole : this.consoleInfo;
18
+ }
19
+ get log() {
20
+ return this.configSvc.isProduction ? this.noConsole : this.consoleLog;
21
+ }
22
+ get warn() {
23
+ return this.configSvc.isProduction ? this.noConsole : this.consoleWarn;
24
+ }
25
+ removeConsoleAccess() {
26
+ if (this.configSvc.isProduction) {
27
+ return;
28
+ }
29
+ const noConsoleWithError = () => {
30
+ throw new Error('Console Functions Usage Are Not Allowed.');
31
+ };
32
+ console.warn = noConsoleWithError;
33
+ console.info = noConsoleWithError;
34
+ console.error = noConsoleWithError;
35
+ }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoggerService, deps: [{ token: i1.ConfigurationsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoggerService, providedIn: 'root' }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoggerService, decorators: [{
40
+ type: Injectable,
41
+ args: [{
42
+ providedIn: 'root',
43
+ }]
44
+ }], ctorParameters: function () { return [{ type: i1.ConfigurationsService }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJ5L3N1bmJpcmQtY2IvdXRpbHMtdjIvc3JjL2xpYi9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBOzs7QUFPMUMsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFBb0IsU0FBZ0M7UUFBaEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFFNUMsaUJBQVksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO1FBQzVCLGdCQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQTtRQUMxQixlQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQTtRQUN4QixnQkFBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUE7UUFDMUIsY0FBUyxHQUFlLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQU5lLENBQUM7SUFRekQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFBO0lBQzFCLENBQUM7SUFDRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFBO0lBQ3hFLENBQUM7SUFDRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFBO0lBQ3ZFLENBQUM7SUFDRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFBO0lBQ3hFLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtZQUMvQixPQUFNO1NBQ1A7UUFDRCxNQUFNLGtCQUFrQixHQUFlLEdBQUcsRUFBRTtZQUMxQyxNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUE7UUFDN0QsQ0FBQyxDQUFBO1FBRUQsT0FBTyxDQUFDLElBQUksR0FBRyxrQkFBa0IsQ0FBQTtRQUNqQyxPQUFPLENBQUMsSUFBSSxHQUFHLGtCQUFrQixDQUFBO1FBQ2pDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUE7SUFDcEMsQ0FBQzsrR0FqQ1UsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTpuby1jb25zb2xlXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uc1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb25zLnNlcnZpY2UnXHJcblxyXG50eXBlIGNvbnNvbGVGdW4gPSAoLi4uYXJnczogYW55KSA9PiB2b2lkXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dnZXJTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ1N2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlKSB7IH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zb2xlRXJyb3IgPSBjb25zb2xlLmVycm9yXHJcbiAgcHJpdmF0ZSBjb25zb2xlSW5mbyA9IGNvbnNvbGUuaW5mb1xyXG4gIHByaXZhdGUgY29uc29sZUxvZyA9IGNvbnNvbGUubG9nXHJcbiAgcHJpdmF0ZSBjb25zb2xlV2FybiA9IGNvbnNvbGUud2FyblxyXG4gIHByaXZhdGUgbm9Db25zb2xlOiBjb25zb2xlRnVuID0gKCkgPT4geyB9XHJcblxyXG4gIGdldCBlcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnNvbGVFcnJvclxyXG4gIH1cclxuICBnZXQgaW5mbygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy5pc1Byb2R1Y3Rpb24gPyB0aGlzLm5vQ29uc29sZSA6IHRoaXMuY29uc29sZUluZm9cclxuICB9XHJcbiAgZ2V0IGxvZygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy5pc1Byb2R1Y3Rpb24gPyB0aGlzLm5vQ29uc29sZSA6IHRoaXMuY29uc29sZUxvZ1xyXG4gIH1cclxuICBnZXQgd2FybigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy5pc1Byb2R1Y3Rpb24gPyB0aGlzLm5vQ29uc29sZSA6IHRoaXMuY29uc29sZVdhcm5cclxuICB9XHJcblxyXG4gIHJlbW92ZUNvbnNvbGVBY2Nlc3MoKSB7XHJcbiAgICBpZiAodGhpcy5jb25maWdTdmMuaXNQcm9kdWN0aW9uKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG4gICAgY29uc3Qgbm9Db25zb2xlV2l0aEVycm9yOiBjb25zb2xlRnVuID0gKCkgPT4ge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvbnNvbGUgRnVuY3Rpb25zIFVzYWdlIEFyZSBOb3QgQWxsb3dlZC4nKVxyXG4gICAgfVxyXG4gICAgLy8gY29uc29sZS5sb2cgPSBub0NvbnNvbGVXaXRoRXJyb3JcclxuICAgIGNvbnNvbGUud2FybiA9IG5vQ29uc29sZVdpdGhFcnJvclxyXG4gICAgY29uc29sZS5pbmZvID0gbm9Db25zb2xlV2l0aEVycm9yXHJcbiAgICBjb25zb2xlLmVycm9yID0gbm9Db25zb2xlV2l0aEVycm9yXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXMtb2ZmaWNlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3V0aWxzLXYyL3NyYy9saWIvc2VydmljZXMvbXMtb2ZmaWNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElXc01zVG9rZW5Nb2RlbFJlc3BvbnNlIHtcclxuICBhY2Nlc3NUb2tlbj86IHN0cmluZ1xyXG4gIGV4cGlyZXNPbj86IHN0cmluZ1xyXG4gIHJlc291cmNlPzogc3RyaW5nXHJcbiAgdG9rZW5UeXBlPzogc3RyaW5nXHJcbn1cclxuIl19