@smartbit4all/ng-client 1.1.24 → 1.1.25

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 (259) hide show
  1. package/README.md +386 -386
  2. package/esm2020/lib/session/api/api/api.mjs +4 -4
  3. package/esm2020/lib/session/api/api/session.service.mjs +306 -306
  4. package/esm2020/lib/session/api/configuration.mjs +91 -91
  5. package/esm2020/lib/session/api/encoder.mjs +19 -19
  6. package/esm2020/lib/session/api/index.mjs +3 -3
  7. package/esm2020/lib/session/api/model/accountInfo.mjs +13 -13
  8. package/esm2020/lib/session/api/model/apiError.mjs +13 -13
  9. package/esm2020/lib/session/api/model/authenticationProviderData.mjs +13 -13
  10. package/esm2020/lib/session/api/model/getAuthenticationProvidersResponse.mjs +2 -2
  11. package/esm2020/lib/session/api/model/models.mjs +9 -9
  12. package/esm2020/lib/session/api/model/refreshSessionRequest.mjs +13 -13
  13. package/esm2020/lib/session/api/model/session.mjs +2 -2
  14. package/esm2020/lib/session/api/model/sessionInfoData.mjs +2 -2
  15. package/esm2020/lib/session/api/model/userActivityLog.mjs +13 -13
  16. package/esm2020/lib/session/api/param.mjs +2 -2
  17. package/esm2020/lib/session/api/variables.mjs +9 -9
  18. package/esm2020/lib/session/cookie-service/smart-cookie.service.mjs +225 -225
  19. package/esm2020/lib/session/dev-tool/smart-dev-tool-dialog/smart-dev-tool-dialog.component.mjs +90 -90
  20. package/esm2020/lib/session/dev-tool/smart-dev-tool-dialog/smart-dev-tool-dialog.service.mjs +43 -43
  21. package/esm2020/lib/session/dev-tool/smart-dev-tool-floating-button/smart-dev-tool-floating-button.component.mjs +40 -40
  22. package/esm2020/lib/session/dev-tool/smart-dev-tool.interceptor.mjs +52 -52
  23. package/esm2020/lib/session/dev-tool/smart-dev-tool.service.mjs +161 -161
  24. package/esm2020/lib/session/projects.mjs +12 -12
  25. package/esm2020/lib/session/smart-error-catching.interceptor.mjs +71 -71
  26. package/esm2020/lib/session/smart-header-maintainer.interceptor.mjs +36 -36
  27. package/esm2020/lib/session/smart-session-handler.service.mjs +6 -6
  28. package/esm2020/lib/session/smart-session.module.mjs +74 -74
  29. package/esm2020/lib/session/smart-session.service.mjs +205 -205
  30. package/esm2020/lib/session/smart-timer/smart-session-timer.component.mjs +35 -35
  31. package/esm2020/lib/session/smart-timer/smart-session-timer.service.mjs +51 -51
  32. package/esm2020/lib/smart-client/projects.mjs +6 -6
  33. package/esm2020/lib/smart-client/smart-authentication.service.mjs +15 -15
  34. package/esm2020/lib/smart-client/smart-component-api-client.mjs +316 -316
  35. package/esm2020/lib/smart-client/smart.component.mjs +30 -30
  36. package/esm2020/lib/smart-client/smart.service.mjs +30 -30
  37. package/esm2020/lib/smart-client/smart.subject.mjs +21 -21
  38. package/esm2020/lib/smart-ng-client.module.mjs +20 -20
  39. package/esm2020/lib/smart-ng-client.service.mjs +19 -19
  40. package/esm2020/lib/view-context/api/api/api.mjs +4 -4
  41. package/esm2020/lib/view-context/api/api/view.service.mjs +701 -701
  42. package/esm2020/lib/view-context/api/api.module.mjs +40 -40
  43. package/esm2020/lib/view-context/api/configuration.mjs +91 -91
  44. package/esm2020/lib/view-context/api/encoder.mjs +19 -19
  45. package/esm2020/lib/view-context/api/index.mjs +7 -7
  46. package/esm2020/lib/view-context/api/model/closeResult.mjs +17 -17
  47. package/esm2020/lib/view-context/api/model/componentConstraint.mjs +2 -2
  48. package/esm2020/lib/view-context/api/model/componentModel.mjs +2 -2
  49. package/esm2020/lib/view-context/api/model/componentModelChange.mjs +13 -13
  50. package/esm2020/lib/view-context/api/model/dataChange.mjs +2 -2
  51. package/esm2020/lib/view-context/api/model/dataChangeEvent.mjs +2 -2
  52. package/esm2020/lib/view-context/api/model/dataChangeKind.mjs +17 -17
  53. package/esm2020/lib/view-context/api/model/messageData.mjs +2 -2
  54. package/esm2020/lib/view-context/api/model/messageOption.mjs +2 -2
  55. package/esm2020/lib/view-context/api/model/messageOptionType.mjs +17 -17
  56. package/esm2020/lib/view-context/api/model/messageResult.mjs +2 -2
  57. package/esm2020/lib/view-context/api/model/messageType.mjs +18 -18
  58. package/esm2020/lib/view-context/api/model/models.mjs +37 -37
  59. package/esm2020/lib/view-context/api/model/openPendingData.mjs +2 -2
  60. package/esm2020/lib/view-context/api/model/smartLinkData.mjs +2 -2
  61. package/esm2020/lib/view-context/api/model/uiAction.mjs +2 -2
  62. package/esm2020/lib/view-context/api/model/uiActionButtonDescriptor.mjs +13 -13
  63. package/esm2020/lib/view-context/api/model/uiActionButtonIconPos.mjs +16 -16
  64. package/esm2020/lib/view-context/api/model/uiActionButtonType.mjs +21 -21
  65. package/esm2020/lib/view-context/api/model/uiActionDescriptor.mjs +2 -2
  66. package/esm2020/lib/view-context/api/model/uiActionDialogDescriptor.mjs +2 -2
  67. package/esm2020/lib/view-context/api/model/uiActionFeedbackType.mjs +16 -16
  68. package/esm2020/lib/view-context/api/model/uiActionInputType.mjs +18 -18
  69. package/esm2020/lib/view-context/api/model/uiActionRequest.mjs +13 -13
  70. package/esm2020/lib/view-context/api/model/valueSet.mjs +2 -2
  71. package/esm2020/lib/view-context/api/model/view.mjs +2 -2
  72. package/esm2020/lib/view-context/api/model/viewApiError.mjs +13 -13
  73. package/esm2020/lib/view-context/api/model/viewConstraint.mjs +2 -2
  74. package/esm2020/lib/view-context/api/model/viewContext.mjs +2 -2
  75. package/esm2020/lib/view-context/api/model/viewContextChange.mjs +2 -2
  76. package/esm2020/lib/view-context/api/model/viewContextData.mjs +2 -2
  77. package/esm2020/lib/view-context/api/model/viewContextUpdate.mjs +2 -2
  78. package/esm2020/lib/view-context/api/model/viewData.mjs +2 -2
  79. package/esm2020/lib/view-context/api/model/viewEventHandler.mjs +20 -20
  80. package/esm2020/lib/view-context/api/model/viewState.mjs +21 -21
  81. package/esm2020/lib/view-context/api/model/viewStateUpdate.mjs +2 -2
  82. package/esm2020/lib/view-context/api/model/viewType.mjs +17 -17
  83. package/esm2020/lib/view-context/api/param.mjs +2 -2
  84. package/esm2020/lib/view-context/api/variables.mjs +9 -9
  85. package/esm2020/lib/view-context/message-dialog/message-dialog.component.mjs +63 -63
  86. package/esm2020/lib/view-context/projects.mjs +17 -17
  87. package/esm2020/lib/view-context/property-definition-data.mjs +2 -2
  88. package/esm2020/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.mjs +30 -30
  89. package/esm2020/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.mjs +53 -53
  90. package/esm2020/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.mjs +47 -47
  91. package/esm2020/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.mjs +119 -119
  92. package/esm2020/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.mjs +51 -51
  93. package/esm2020/lib/view-context/smart-ui-action/ui-action-toolbar.component.mjs +109 -109
  94. package/esm2020/lib/view-context/smart-ui-action/ui-action.descriptor.service.mjs +118 -118
  95. package/esm2020/lib/view-context/smart-ui-action/ui-action.model.mjs +7 -7
  96. package/esm2020/lib/view-context/smart-ui-action/ui-action.service.mjs +149 -149
  97. package/esm2020/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.mjs +29 -24
  98. package/esm2020/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.mjs +69 -49
  99. package/esm2020/lib/view-context/smart-view-context.interceptor.mjs +39 -39
  100. package/esm2020/lib/view-context/smart-view-context.model.mjs +2 -2
  101. package/esm2020/lib/view-context/smart-view-context.module.mjs +84 -84
  102. package/esm2020/lib/view-context/smart-view-context.service.mjs +495 -477
  103. package/esm2020/lib/view-context/smart-view-redirect/smart-view-redirect.mjs +33 -33
  104. package/esm2020/lib/view-context/value-api/api/api.mjs +4 -4
  105. package/esm2020/lib/view-context/value-api/api/value.service.mjs +138 -138
  106. package/esm2020/lib/view-context/value-api/api.module.mjs +40 -40
  107. package/esm2020/lib/view-context/value-api/configuration.mjs +91 -91
  108. package/esm2020/lib/view-context/value-api/encoder.mjs +19 -19
  109. package/esm2020/lib/view-context/value-api/index.mjs +7 -7
  110. package/esm2020/lib/view-context/value-api/model/models.mjs +9 -9
  111. package/esm2020/lib/view-context/value-api/model/value.mjs +13 -13
  112. package/esm2020/lib/view-context/value-api/model/valueSetData.mjs +13 -13
  113. package/esm2020/lib/view-context/value-api/model/valueSetDefinition.mjs +2 -2
  114. package/esm2020/lib/view-context/value-api/model/valueSetDefinitionData.mjs +2 -2
  115. package/esm2020/lib/view-context/value-api/model/valueSetDefinitionKind.mjs +23 -23
  116. package/esm2020/lib/view-context/value-api/model/valueSetExpression.mjs +2 -2
  117. package/esm2020/lib/view-context/value-api/model/valueSetOperand.mjs +2 -2
  118. package/esm2020/lib/view-context/value-api/model/valueSetOperation.mjs +18 -18
  119. package/esm2020/lib/view-context/value-api/param.mjs +2 -2
  120. package/esm2020/lib/view-context/value-api/variables.mjs +9 -9
  121. package/esm2020/projects.mjs +9 -9
  122. package/esm2020/smartbit4all-ng-client.mjs +4 -4
  123. package/fesm2015/smartbit4all-ng-client.mjs +4301 -4255
  124. package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
  125. package/fesm2020/smartbit4all-ng-client.mjs +4256 -4215
  126. package/fesm2020/smartbit4all-ng-client.mjs.map +1 -1
  127. package/lib/session/api/api/api.d.ts +3 -3
  128. package/lib/session/api/api/session.service.d.ts +107 -107
  129. package/lib/session/api/configuration.d.ts +104 -104
  130. package/lib/session/api/encoder.d.ts +11 -11
  131. package/lib/session/api/index.d.ts +2 -2
  132. package/lib/session/api/model/accountInfo.d.ts +22 -22
  133. package/lib/session/api/model/apiError.d.ts +15 -15
  134. package/lib/session/api/model/authenticationProviderData.d.ts +17 -17
  135. package/lib/session/api/model/getAuthenticationProvidersResponse.d.ts +15 -15
  136. package/lib/session/api/model/models.d.ts +8 -8
  137. package/lib/session/api/model/refreshSessionRequest.d.ts +14 -14
  138. package/lib/session/api/model/session.d.ts +32 -32
  139. package/lib/session/api/model/sessionInfoData.d.ts +22 -22
  140. package/lib/session/api/model/userActivityLog.d.ts +33 -33
  141. package/lib/session/api/param.d.ts +37 -37
  142. package/lib/session/api/variables.d.ts +8 -8
  143. package/lib/session/cookie-service/smart-cookie.service.d.ts +129 -129
  144. package/lib/session/dev-tool/smart-dev-tool-dialog/smart-dev-tool-dialog.component.d.ts +28 -28
  145. package/lib/session/dev-tool/smart-dev-tool-dialog/smart-dev-tool-dialog.service.d.ts +18 -18
  146. package/lib/session/dev-tool/smart-dev-tool-floating-button/smart-dev-tool-floating-button.component.d.ts +15 -15
  147. package/lib/session/dev-tool/smart-dev-tool.interceptor.d.ts +18 -18
  148. package/lib/session/dev-tool/smart-dev-tool.service.d.ts +55 -55
  149. package/lib/session/projects.d.ts +8 -8
  150. package/lib/session/smart-error-catching.interceptor.d.ts +13 -13
  151. package/lib/session/smart-header-maintainer.interceptor.d.ts +11 -11
  152. package/lib/session/smart-session-handler.service.d.ts +11 -11
  153. package/lib/session/smart-session.module.d.ts +15 -15
  154. package/lib/session/smart-session.service.d.ts +50 -50
  155. package/lib/session/smart-timer/smart-session-timer.component.d.ts +14 -14
  156. package/lib/session/smart-timer/smart-session-timer.service.d.ts +21 -21
  157. package/lib/smart-client/projects.d.ts +5 -5
  158. package/lib/smart-client/smart-authentication.service.d.ts +12 -12
  159. package/lib/smart-client/smart-component-api-client.d.ts +71 -71
  160. package/lib/smart-client/smart.component.d.ts +11 -11
  161. package/lib/smart-client/smart.service.d.ts +11 -11
  162. package/lib/smart-client/smart.subject.d.ts +6 -6
  163. package/lib/smart-ng-client.module.d.ts +8 -8
  164. package/lib/smart-ng-client.service.d.ts +10 -10
  165. package/lib/view-context/api/api/api.d.ts +3 -3
  166. package/lib/view-context/api/api/view.service.d.ts +266 -266
  167. package/lib/view-context/api/api.module.d.ts +11 -11
  168. package/lib/view-context/api/configuration.d.ts +104 -104
  169. package/lib/view-context/api/encoder.d.ts +11 -11
  170. package/lib/view-context/api/index.d.ts +6 -6
  171. package/lib/view-context/api/model/closeResult.d.ts +17 -17
  172. package/lib/view-context/api/model/componentConstraint.d.ts +25 -25
  173. package/lib/view-context/api/model/componentModel.d.ts +31 -31
  174. package/lib/view-context/api/model/componentModelChange.d.ts +29 -29
  175. package/lib/view-context/api/model/dataChange.d.ts +27 -27
  176. package/lib/view-context/api/model/dataChangeEvent.d.ts +33 -33
  177. package/lib/view-context/api/model/dataChangeKind.d.ts +20 -20
  178. package/lib/view-context/api/model/messageData.d.ts +29 -29
  179. package/lib/view-context/api/model/messageOption.d.ts +20 -20
  180. package/lib/view-context/api/model/messageOptionType.d.ts +17 -17
  181. package/lib/view-context/api/model/messageResult.d.ts +16 -16
  182. package/lib/view-context/api/model/messageType.d.ts +18 -18
  183. package/lib/view-context/api/model/models.d.ts +36 -36
  184. package/lib/view-context/api/model/openPendingData.d.ts +22 -22
  185. package/lib/view-context/api/model/smartLinkData.d.ts +21 -21
  186. package/lib/view-context/api/model/uiAction.d.ts +29 -29
  187. package/lib/view-context/api/model/uiActionButtonDescriptor.d.ts +18 -18
  188. package/lib/view-context/api/model/uiActionButtonIconPos.d.ts +19 -19
  189. package/lib/view-context/api/model/uiActionButtonType.d.ts +24 -24
  190. package/lib/view-context/api/model/uiActionDescriptor.d.ts +34 -34
  191. package/lib/view-context/api/model/uiActionDialogDescriptor.d.ts +23 -23
  192. package/lib/view-context/api/model/uiActionFeedbackType.d.ts +19 -19
  193. package/lib/view-context/api/model/uiActionInputType.d.ts +18 -18
  194. package/lib/view-context/api/model/uiActionRequest.d.ts +28 -28
  195. package/lib/view-context/api/model/valueSet.d.ts +20 -20
  196. package/lib/view-context/api/model/view.d.ts +68 -68
  197. package/lib/view-context/api/model/viewApiError.d.ts +18 -18
  198. package/lib/view-context/api/model/viewConstraint.d.ts +18 -18
  199. package/lib/view-context/api/model/viewContext.d.ts +22 -22
  200. package/lib/view-context/api/model/viewContextChange.d.ts +20 -20
  201. package/lib/view-context/api/model/viewContextData.d.ts +19 -19
  202. package/lib/view-context/api/model/viewContextUpdate.d.ts +22 -22
  203. package/lib/view-context/api/model/viewData.d.ts +27 -27
  204. package/lib/view-context/api/model/viewEventHandler.d.ts +30 -30
  205. package/lib/view-context/api/model/viewState.d.ts +21 -21
  206. package/lib/view-context/api/model/viewStateUpdate.d.ts +24 -24
  207. package/lib/view-context/api/model/viewType.d.ts +17 -17
  208. package/lib/view-context/api/param.d.ts +37 -37
  209. package/lib/view-context/api/variables.d.ts +8 -8
  210. package/lib/view-context/message-dialog/message-dialog.component.d.ts +17 -17
  211. package/lib/view-context/projects.d.ts +13 -13
  212. package/lib/view-context/property-definition-data.d.ts +5 -5
  213. package/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.d.ts +13 -13
  214. package/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.d.ts +25 -25
  215. package/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.d.ts +18 -18
  216. package/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.d.ts +29 -29
  217. package/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.d.ts +25 -25
  218. package/lib/view-context/smart-ui-action/ui-action-toolbar.component.d.ts +30 -30
  219. package/lib/view-context/smart-ui-action/ui-action.descriptor.service.d.ts +21 -21
  220. package/lib/view-context/smart-ui-action/ui-action.model.d.ts +32 -32
  221. package/lib/view-context/smart-ui-action/ui-action.service.d.ts +31 -31
  222. package/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.d.ts +13 -13
  223. package/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.d.ts +19 -19
  224. package/lib/view-context/smart-view-context.interceptor.d.ts +13 -13
  225. package/lib/view-context/smart-view-context.model.d.ts +30 -30
  226. package/lib/view-context/smart-view-context.module.d.ts +20 -20
  227. package/lib/view-context/smart-view-context.service.d.ts +99 -96
  228. package/lib/view-context/smart-view-redirect/smart-view-redirect.d.ts +14 -14
  229. package/lib/view-context/value-api/api/api.d.ts +3 -3
  230. package/lib/view-context/value-api/api/value.service.d.ts +35 -35
  231. package/lib/view-context/value-api/api.module.d.ts +11 -11
  232. package/lib/view-context/value-api/configuration.d.ts +104 -104
  233. package/lib/view-context/value-api/encoder.d.ts +11 -11
  234. package/lib/view-context/value-api/index.d.ts +6 -6
  235. package/lib/view-context/value-api/model/models.d.ts +8 -8
  236. package/lib/view-context/value-api/model/value.d.ts +29 -29
  237. package/lib/view-context/value-api/model/valueSetData.d.ts +41 -41
  238. package/lib/view-context/value-api/model/valueSetDefinition.d.ts +16 -16
  239. package/lib/view-context/value-api/model/valueSetDefinitionData.d.ts +55 -55
  240. package/lib/view-context/value-api/model/valueSetDefinitionKind.d.ts +23 -23
  241. package/lib/view-context/value-api/model/valueSetExpression.d.ts +20 -20
  242. package/lib/view-context/value-api/model/valueSetOperand.d.ts +25 -25
  243. package/lib/view-context/value-api/model/valueSetOperation.d.ts +18 -18
  244. package/lib/view-context/value-api/param.d.ts +37 -37
  245. package/lib/view-context/value-api/variables.d.ts +8 -8
  246. package/package.json +1 -1
  247. package/projects.d.ts +5 -5
  248. package/schematics/collection.json +11 -11
  249. package/schematics/smart-component/index.ts +26 -26
  250. package/schematics/smart-component/schema.json +20 -20
  251. package/schematics/smart-component/smart-component.schema.ts +4 -4
  252. package/schematics/smart-component/templates/__name@dasherize__.component.html.template +2 -2
  253. package/schematics/smart-component/templates/__name@dasherize__.component.ts.template +26 -26
  254. package/smartbit4all-ng-client-1.1.25.tgz +0 -0
  255. package/smartbit4all-ng-client.d.ts +5 -5
  256. package/src/lib/session/api/README.md +226 -226
  257. package/src/lib/view-context/api/README.md +226 -226
  258. package/src/lib/view-context/value-api/README.md +226 -226
  259. package/smartbit4all-ng-client-1.1.24.tgz +0 -0
@@ -1,52 +1,52 @@
1
- import { HttpEventType, } from "@angular/common/http";
2
- import { Injectable } from "@angular/core";
3
- import { catchError, map, throwError } from "rxjs";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./smart-dev-tool.service";
6
- export class SmartDevToolInterceptor {
7
- constructor(service) {
8
- this.service = service;
9
- }
10
- intercept(request, next) {
11
- if (!this.service.isActive) {
12
- return next.handle(request);
13
- }
14
- let requestDate = new Date();
15
- return next.handle(request).pipe(map((event) => {
16
- if (event.type === HttpEventType.Response) {
17
- let responseDate = new Date();
18
- this.service.writeResponse(request, event, requestDate, responseDate);
19
- }
20
- return event;
21
- }));
22
- }
23
- }
24
- SmartDevToolInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolInterceptor, deps: [{ token: i1.SmartDevToolService }], target: i0.ɵɵFactoryTarget.Injectable });
25
- SmartDevToolInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolInterceptor });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolInterceptor, decorators: [{
27
- type: Injectable
28
- }], ctorParameters: function () { return [{ type: i1.SmartDevToolService }]; } });
29
- export class SmartDevToolErrorInterceptor {
30
- constructor(service) {
31
- this.service = service;
32
- }
33
- intercept(request, next) {
34
- if (!this.service.isActive) {
35
- return next.handle(request);
36
- }
37
- let requestDate = new Date();
38
- return next.handle(request).pipe(catchError((error) => {
39
- if (error.status !== 200) {
40
- let responseDate = new Date();
41
- this.service.writeResponse(request, error, requestDate, responseDate);
42
- }
43
- return throwError(error);
44
- }));
45
- }
46
- }
47
- SmartDevToolErrorInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolErrorInterceptor, deps: [{ token: i1.SmartDevToolService }], target: i0.ɵɵFactoryTarget.Injectable });
48
- SmartDevToolErrorInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolErrorInterceptor });
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolErrorInterceptor, decorators: [{
50
- type: Injectable
51
- }], ctorParameters: function () { return [{ type: i1.SmartDevToolService }]; } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZGV2LXRvb2wuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL2Rldi10b29sL3NtYXJ0LWRldi10b29sLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxhQUFhLEdBSWhCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUkvRCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLFlBQW9CLE9BQTRCO1FBQTVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQUcsQ0FBQztJQUVwRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM1QixHQUFHLENBQUMsQ0FBQyxLQUFxQixFQUFFLEVBQUU7WUFDMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3ZDLElBQUksWUFBWSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQ3pFO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7O3FIQWxCUSx1QkFBdUI7eUhBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOztBQXNCWCxNQUFNLE9BQU8sNEJBQTRCO0lBQ3JDLFlBQW9CLE9BQTRCO1FBQTVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQUcsQ0FBQztJQUVwRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM1QixVQUFVLENBQUMsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDcEMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDdEIsSUFBSSxZQUFZLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxDQUFDLENBQUM7YUFDekU7WUFFRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQzs7MEhBbEJRLDRCQUE0Qjs4SEFBNUIsNEJBQTRCOzRGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgSHR0cEVycm9yUmVzcG9uc2UsXHJcbiAgICBIdHRwRXZlbnQsXHJcbiAgICBIdHRwRXZlbnRUeXBlLFxyXG4gICAgSHR0cEhhbmRsZXIsXHJcbiAgICBIdHRwSW50ZXJjZXB0b3IsXHJcbiAgICBIdHRwUmVxdWVzdCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFNtYXJ0RGV2VG9vbFNlcnZpY2UgfSBmcm9tIFwiLi9zbWFydC1kZXYtdG9vbC5zZXJ2aWNlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTbWFydERldlRvb2xJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6IFNtYXJ0RGV2VG9vbFNlcnZpY2UpIHt9XHJcblxyXG4gICAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnNlcnZpY2UuaXNBY3RpdmUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgcmVxdWVzdERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxyXG4gICAgICAgICAgICBtYXAoKGV2ZW50OiBIdHRwRXZlbnQ8YW55PikgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgcmVzcG9uc2VEYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2Uud3JpdGVSZXNwb25zZShyZXF1ZXN0LCBldmVudCwgcmVxdWVzdERhdGUsIHJlc3BvbnNlRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50O1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU21hcnREZXZUb29sRXJyb3JJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6IFNtYXJ0RGV2VG9vbFNlcnZpY2UpIHt9XHJcblxyXG4gICAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnNlcnZpY2UuaXNBY3RpdmUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgcmVxdWVzdERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChlcnJvci5zdGF0dXMgIT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCByZXNwb25zZURhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZS53cml0ZVJlc3BvbnNlKHJlcXVlc3QsIGVycm9yLCByZXF1ZXN0RGF0ZSwgcmVzcG9uc2VEYXRlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxufVxyXG4iXX0=
1
+ import { HttpEventType, } from "@angular/common/http";
2
+ import { Injectable } from "@angular/core";
3
+ import { catchError, map, throwError } from "rxjs";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./smart-dev-tool.service";
6
+ export class SmartDevToolInterceptor {
7
+ constructor(service) {
8
+ this.service = service;
9
+ }
10
+ intercept(request, next) {
11
+ if (!this.service.isActive) {
12
+ return next.handle(request);
13
+ }
14
+ let requestDate = new Date();
15
+ return next.handle(request).pipe(map((event) => {
16
+ if (event.type === HttpEventType.Response) {
17
+ let responseDate = new Date();
18
+ this.service.writeResponse(request, event, requestDate, responseDate);
19
+ }
20
+ return event;
21
+ }));
22
+ }
23
+ }
24
+ SmartDevToolInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolInterceptor, deps: [{ token: i1.SmartDevToolService }], target: i0.ɵɵFactoryTarget.Injectable });
25
+ SmartDevToolInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolInterceptor });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolInterceptor, decorators: [{
27
+ type: Injectable
28
+ }], ctorParameters: function () { return [{ type: i1.SmartDevToolService }]; } });
29
+ export class SmartDevToolErrorInterceptor {
30
+ constructor(service) {
31
+ this.service = service;
32
+ }
33
+ intercept(request, next) {
34
+ if (!this.service.isActive) {
35
+ return next.handle(request);
36
+ }
37
+ let requestDate = new Date();
38
+ return next.handle(request).pipe(catchError((error) => {
39
+ if (error.status !== 200) {
40
+ let responseDate = new Date();
41
+ this.service.writeResponse(request, error, requestDate, responseDate);
42
+ }
43
+ return throwError(error);
44
+ }));
45
+ }
46
+ }
47
+ SmartDevToolErrorInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolErrorInterceptor, deps: [{ token: i1.SmartDevToolService }], target: i0.ɵɵFactoryTarget.Injectable });
48
+ SmartDevToolErrorInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolErrorInterceptor });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolErrorInterceptor, decorators: [{
50
+ type: Injectable
51
+ }], ctorParameters: function () { return [{ type: i1.SmartDevToolService }]; } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZGV2LXRvb2wuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL2Rldi10b29sL3NtYXJ0LWRldi10b29sLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxhQUFhLEdBSWhCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUkvRCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLFlBQW9CLE9BQTRCO1FBQTVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQUcsQ0FBQztJQUVwRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM1QixHQUFHLENBQUMsQ0FBQyxLQUFxQixFQUFFLEVBQUU7WUFDMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3ZDLElBQUksWUFBWSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQ3pFO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7O3FIQWxCUSx1QkFBdUI7eUhBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOztBQXNCWCxNQUFNLE9BQU8sNEJBQTRCO0lBQ3JDLFlBQW9CLE9BQTRCO1FBQTVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQUcsQ0FBQztJQUVwRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM1QixVQUFVLENBQUMsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDcEMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDdEIsSUFBSSxZQUFZLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxDQUFDLENBQUM7YUFDekU7WUFFRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQzs7MEhBbEJRLDRCQUE0Qjs4SEFBNUIsNEJBQTRCOzRGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEh0dHBFcnJvclJlc3BvbnNlLFxuICAgIEh0dHBFdmVudCxcbiAgICBIdHRwRXZlbnRUeXBlLFxuICAgIEh0dHBIYW5kbGVyLFxuICAgIEh0dHBJbnRlcmNlcHRvcixcbiAgICBIdHRwUmVxdWVzdCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBTbWFydERldlRvb2xTZXJ2aWNlIH0gZnJvbSBcIi4vc21hcnQtZGV2LXRvb2wuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU21hcnREZXZUb29sSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogU21hcnREZXZUb29sU2VydmljZSkge31cblxuICAgIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgICAgICBpZiAoIXRoaXMuc2VydmljZS5pc0FjdGl2ZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xuICAgICAgICB9XG4gICAgICAgIGxldCByZXF1ZXN0RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxuICAgICAgICAgICAgbWFwKChldmVudDogSHR0cEV2ZW50PGFueT4pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5SZXNwb25zZSkge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcmVzcG9uc2VEYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLndyaXRlUmVzcG9uc2UocmVxdWVzdCwgZXZlbnQsIHJlcXVlc3REYXRlLCByZXNwb25zZURhdGUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBldmVudDtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxufVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNtYXJ0RGV2VG9vbEVycm9ySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogU21hcnREZXZUb29sU2VydmljZSkge31cblxuICAgIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgICAgICBpZiAoIXRoaXMuc2VydmljZS5pc0FjdGl2ZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xuICAgICAgICB9XG4gICAgICAgIGxldCByZXF1ZXN0RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCByZXNwb25zZURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2Uud3JpdGVSZXNwb25zZShyZXF1ZXN0LCBlcnJvciwgcmVxdWVzdERhdGUsIHJlc3BvbnNlRGF0ZSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -1,161 +1,161 @@
1
- import { DatePipe } from "@angular/common";
2
- import { Injectable, Pipe } from "@angular/core";
3
- import { Subject } from "rxjs";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../cookie-service/smart-cookie.service";
6
- export class SmartDevToolService {
7
- constructor(cookieService) {
8
- this.cookieService = cookieService;
9
- this.smartDevToolName = "smartDevTool";
10
- this.isSmartDevToolActiveName = "smartDevToolActive";
11
- this.isActive = false;
12
- this.smartDevToolHoursName = "smartDevToolHours";
13
- this.smartDevToolMaxName = "smartDevToolMaxCalls";
14
- this.hoursToSave = 1;
15
- this.maxNumOfSavedCalls = 50;
16
- this.descriptorChanged = new Subject();
17
- this.newErrorsCount = 0;
18
- this.newErrorsCountChanged = new Subject();
19
- this.setUpLocalStorage();
20
- let apiCallsFromLocalStorage = localStorage.getItem(this.smartDevToolName);
21
- if (apiCallsFromLocalStorage) {
22
- this.descriptor = JSON.parse(apiCallsFromLocalStorage);
23
- }
24
- else {
25
- this.descriptor = { apiCalls: [] };
26
- this.save();
27
- }
28
- window.addEventListener("storage", (event) => {
29
- if (event.storageArea === localStorage) {
30
- this.isActive = localStorage.getItem(this.isSmartDevToolActiveName) === "true";
31
- let hoursToSaveString = localStorage.getItem(this.smartDevToolHoursName);
32
- if (hoursToSaveString) {
33
- this.hoursToSave = Number.parseInt(hoursToSaveString);
34
- }
35
- let maxNumOfSavedCalls = localStorage.getItem(this.smartDevToolMaxName);
36
- if (maxNumOfSavedCalls) {
37
- this.maxNumOfSavedCalls = Number.parseInt(maxNumOfSavedCalls);
38
- }
39
- }
40
- });
41
- }
42
- setUpLocalStorage() {
43
- let keysOfLocalStorage = Object.keys(localStorage);
44
- if (!keysOfLocalStorage.includes(this.isSmartDevToolActiveName)) {
45
- localStorage.setItem(this.isSmartDevToolActiveName, "true");
46
- }
47
- }
48
- writeResponse(request, response, requestDate, responseDate) {
49
- this.sanitizeByLength();
50
- this.sanitizeByTime();
51
- let requestHeader = this.createObject(request.headers.keys(), request.headers, false);
52
- let responseHeader = this.createObject(response.headers.keys(), response.headers, false);
53
- let _localStorage = this.createObject(Object.keys(localStorage).filter((key) => key !== this.smartDevToolName), localStorage, true);
54
- let _sessionStorage = this.createObject(Object.keys(sessionStorage), sessionStorage, true);
55
- let _cookies = this.cookieService.getAll();
56
- this.descriptor.apiCalls = [
57
- {
58
- url: response.url,
59
- requestBody: request.body,
60
- requestHeader,
61
- requestDate,
62
- requestMethod: request.method,
63
- responseBody: response.body ?? null,
64
- responseHeader,
65
- responseStatus: response.status,
66
- responseStatusText: response.statusText,
67
- responseDate,
68
- localStorage: _localStorage,
69
- sessionStorage: _sessionStorage,
70
- cookies: _cookies,
71
- },
72
- ...this.descriptor.apiCalls,
73
- ];
74
- if (response.status !== 200) {
75
- this.newErrorsCount++;
76
- this.newErrorsCountChanged.next();
77
- }
78
- this.save();
79
- }
80
- clearErrors() {
81
- this.newErrorsCount = 0;
82
- this.newErrorsCountChanged.next();
83
- }
84
- createObject(keys, mapWithValues, useGetItem) {
85
- let newObject = {};
86
- keys.forEach((key) => {
87
- if (useGetItem) {
88
- newObject[key] = mapWithValues.getItem(key);
89
- }
90
- else {
91
- newObject[key] = mapWithValues.get(key);
92
- }
93
- });
94
- return newObject;
95
- }
96
- sanitizeByTime() {
97
- let now = new Date();
98
- this.descriptor.apiCalls = this.descriptor.apiCalls.filter((apiCall) => {
99
- let hoursBetween;
100
- if (typeof apiCall.requestDate === "string") {
101
- hoursBetween = Math.floor(Math.abs(now.getMilliseconds() - new Date(apiCall.requestDate).getMilliseconds()) / 36e5);
102
- }
103
- else {
104
- hoursBetween = Math.floor(Math.abs(now.getMilliseconds() - apiCall.requestDate.getMilliseconds()) /
105
- 36e5);
106
- }
107
- return hoursBetween < this.hoursToSave;
108
- });
109
- }
110
- sanitizeByLength() {
111
- if (this.descriptor?.apiCalls &&
112
- this.descriptor.apiCalls.length > this.maxNumOfSavedCalls) {
113
- let length = this.descriptor.apiCalls.length;
114
- this.descriptor.apiCalls.splice(this.maxNumOfSavedCalls - 1, length - this.maxNumOfSavedCalls);
115
- }
116
- }
117
- save() {
118
- try {
119
- localStorage.setItem(this.smartDevToolName, JSON.stringify(this.descriptor));
120
- this.descriptorChanged.next();
121
- }
122
- catch (error) {
123
- // localStorage.setItem() throws a "QuotaExceededError" DOMException exception if the new value
124
- // couldn't be set. (Setting could fail if, e.g., the user has disabled storage for the site,
125
- // or if the quota has been exceeded.)
126
- this.sanitizeByLength();
127
- this.save();
128
- }
129
- }
130
- clear() {
131
- this.descriptor = {
132
- apiCalls: [],
133
- };
134
- this.save();
135
- }
136
- getPureString() {
137
- return localStorage.getItem(this.smartDevToolName);
138
- }
139
- }
140
- SmartDevToolService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolService, deps: [{ token: i1.SmartCookieService }], target: i0.ɵɵFactoryTarget.Injectable });
141
- SmartDevToolService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolService, providedIn: "root" });
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolService, decorators: [{
143
- type: Injectable,
144
- args: [{
145
- providedIn: "root",
146
- }]
147
- }], ctorParameters: function () { return [{ type: i1.SmartCookieService }]; } });
148
- export class SmartDevToolDatePipe extends DatePipe {
149
- transform(value, format = "yyyy.MM.dd. H:mm:ss") {
150
- return super.transform(value, format);
151
- }
152
- }
153
- SmartDevToolDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolDatePipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe });
154
- SmartDevToolDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolDatePipe, name: "smartDevToolDatePipe" });
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolDatePipe, decorators: [{
156
- type: Pipe,
157
- args: [{
158
- name: "smartDevToolDatePipe",
159
- }]
160
- }] });
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZGV2LXRvb2wuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3Nlc3Npb24vZGV2LXRvb2wvc21hcnQtZGV2LXRvb2wuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU0vQixNQUFNLE9BQU8sbUJBQW1CO0lBZ0I1QixZQUFvQixhQUFpQztRQUFqQyxrQkFBYSxHQUFiLGFBQWEsQ0FBb0I7UUFickQscUJBQWdCLEdBQVcsY0FBYyxDQUFDO1FBQzFDLDZCQUF3QixHQUFXLG9CQUFvQixDQUFDO1FBQ3hELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsMEJBQXFCLEdBQVcsbUJBQW1CLENBQUM7UUFDcEQsd0JBQW1CLEdBQVcsc0JBQXNCLENBQUM7UUFDckQsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsdUJBQWtCLEdBQVcsRUFBRSxDQUFDO1FBRWhDLHNCQUFpQixHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRWpELG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBQzNCLDBCQUFxQixHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBR2pELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXpCLElBQUksd0JBQXdCLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMzRSxJQUFJLHdCQUF3QixFQUFFO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1NBQzFEO2FBQU07WUFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNmO1FBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3pDLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxZQUFZLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxNQUFNLENBQUM7Z0JBQy9FLElBQUksaUJBQWlCLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztnQkFDekUsSUFBSSxpQkFBaUIsRUFBRTtvQkFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7aUJBQ3pEO2dCQUNELElBQUksa0JBQWtCLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztnQkFDeEUsSUFBSSxrQkFBa0IsRUFBRTtvQkFDcEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsQ0FBQztpQkFDakU7YUFDSjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLGlCQUFpQjtRQUNyQixJQUFJLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsRUFBRTtZQUM3RCxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMvRDtJQUNMLENBQUM7SUFFRCxhQUFhLENBQ1QsT0FBeUIsRUFDekIsUUFBK0MsRUFDL0MsV0FBaUIsRUFDakIsWUFBa0I7UUFFbEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXRCLElBQUksYUFBYSxHQUFRLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzNGLElBQUksY0FBYyxHQUFRLElBQUksQ0FBQyxZQUFZLENBQ3ZDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQ3ZCLFFBQVEsQ0FBQyxPQUFPLEVBQ2hCLEtBQUssQ0FDUixDQUFDO1FBRUYsSUFBSSxhQUFhLEdBQVEsSUFBSSxDQUFDLFlBQVksQ0FDdEMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFDaEYsWUFBWSxFQUNaLElBQUksQ0FDUCxDQUFDO1FBQ0YsSUFBSSxlQUFlLEdBQVEsSUFBSSxDQUFDLFlBQVksQ0FDeEMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsRUFDM0IsY0FBYyxFQUNkLElBQUksQ0FDUCxDQUFDO1FBQ0YsSUFBSSxRQUFRLEdBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUVoRCxJQUFJLENBQUMsVUFBVyxDQUFDLFFBQVEsR0FBRztZQUN4QjtnQkFDSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUc7Z0JBQ2pCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtnQkFDekIsYUFBYTtnQkFDYixXQUFXO2dCQUNYLGFBQWEsRUFBRSxPQUFPLENBQUMsTUFBTTtnQkFDN0IsWUFBWSxFQUFHLFFBQThCLENBQUMsSUFBSSxJQUFJLElBQUk7Z0JBQzFELGNBQWM7Z0JBQ2QsY0FBYyxFQUFFLFFBQVEsQ0FBQyxNQUFNO2dCQUMvQixrQkFBa0IsRUFBRSxRQUFRLENBQUMsVUFBVTtnQkFDdkMsWUFBWTtnQkFDWixZQUFZLEVBQUUsYUFBYTtnQkFDM0IsY0FBYyxFQUFFLGVBQWU7Z0JBQy9CLE9BQU8sRUFBRSxRQUFRO2FBQ3BCO1lBQ0QsR0FBRyxJQUFJLENBQUMsVUFBVyxDQUFDLFFBQVE7U0FDL0IsQ0FBQztRQUVGLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7WUFDekIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNyQztRQUVELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQWMsRUFBRSxhQUFrQixFQUFFLFVBQW1CO1FBQ2hFLElBQUksU0FBUyxHQUFRLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUU7WUFDekIsSUFBSSxVQUFVLEVBQUU7Z0JBQ1osU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDL0M7aUJBQU07Z0JBQ0gsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDM0M7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxHQUFHLEdBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQ3hELENBQUMsT0FBc0MsRUFBRSxFQUFFO1lBQ3ZDLElBQUksWUFBb0IsQ0FBQztZQUN6QixJQUFJLE9BQU8sT0FBTyxDQUFDLFdBQVcsS0FBSyxRQUFRLEVBQUU7Z0JBQ3pDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUNyQixJQUFJLENBQUMsR0FBRyxDQUNKLEdBQUcsQ0FBQyxlQUFlLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsZUFBZSxFQUFFLENBQzFFLEdBQUcsSUFBSSxDQUNYLENBQUM7YUFDTDtpQkFBTTtnQkFDSCxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztvQkFDbkUsSUFBSSxDQUNYLENBQUM7YUFDTDtZQUVELE9BQU8sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDM0MsQ0FBQyxDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osSUFDSSxJQUFJLENBQUMsVUFBVSxFQUFFLFFBQVE7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFDM0Q7WUFDRSxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUMzQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxFQUMzQixNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUNuQyxDQUFDO1NBQ0w7SUFDTCxDQUFDO0lBRUQsSUFBSTtRQUNBLElBQUk7WUFDQSxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQzdFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNqQztRQUFDLE9BQU8sS0FBVSxFQUFFO1lBQ2pCLCtGQUErRjtZQUMvRiw2RkFBNkY7WUFDN0Ysc0NBQXNDO1lBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNmO0lBQ0wsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2QsUUFBUSxFQUFFLEVBQUU7U0FDZixDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxhQUFhO1FBQ1QsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBRSxDQUFDO0lBQ3hELENBQUM7O2lIQW5MUSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZoQixNQUFNOzRGQUVULG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7O0FBOE1ELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxRQUFRO0lBQ3JDLFNBQVMsQ0FBQyxLQUFVLEVBQUUsU0FBaUIscUJBQXFCO1FBQ2pFLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7a0hBSFEsb0JBQW9CO2dIQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFIaEMsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsc0JBQXNCO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cFJlcXVlc3QsIEh0dHBSZXNwb25zZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFNtYXJ0Q29va2llU2VydmljZSB9IGZyb20gXCIuLi9jb29raWUtc2VydmljZS9zbWFydC1jb29raWUuc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbWFydERldlRvb2xTZXJ2aWNlIHtcclxuICAgIGRlc2NyaXB0b3I/OiBTbWFydERldlRvb2xEZXNjcmlwdG9yO1xyXG5cclxuICAgIHNtYXJ0RGV2VG9vbE5hbWU6IHN0cmluZyA9IFwic21hcnREZXZUb29sXCI7XHJcbiAgICBpc1NtYXJ0RGV2VG9vbEFjdGl2ZU5hbWU6IHN0cmluZyA9IFwic21hcnREZXZUb29sQWN0aXZlXCI7XHJcbiAgICBpc0FjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgc21hcnREZXZUb29sSG91cnNOYW1lOiBzdHJpbmcgPSBcInNtYXJ0RGV2VG9vbEhvdXJzXCI7XHJcbiAgICBzbWFydERldlRvb2xNYXhOYW1lOiBzdHJpbmcgPSBcInNtYXJ0RGV2VG9vbE1heENhbGxzXCI7XHJcbiAgICBob3Vyc1RvU2F2ZTogbnVtYmVyID0gMTtcclxuICAgIG1heE51bU9mU2F2ZWRDYWxsczogbnVtYmVyID0gNTA7XHJcblxyXG4gICAgZGVzY3JpcHRvckNoYW5nZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAgIG5ld0Vycm9yc0NvdW50OiBudW1iZXIgPSAwO1xyXG4gICAgbmV3RXJyb3JzQ291bnRDaGFuZ2VkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvb2tpZVNlcnZpY2U6IFNtYXJ0Q29va2llU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMuc2V0VXBMb2NhbFN0b3JhZ2UoKTtcclxuXHJcbiAgICAgICAgbGV0IGFwaUNhbGxzRnJvbUxvY2FsU3RvcmFnZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuc21hcnREZXZUb29sTmFtZSk7XHJcbiAgICAgICAgaWYgKGFwaUNhbGxzRnJvbUxvY2FsU3RvcmFnZSkge1xyXG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3IgPSBKU09OLnBhcnNlKGFwaUNhbGxzRnJvbUxvY2FsU3RvcmFnZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5kZXNjcmlwdG9yID0geyBhcGlDYWxsczogW10gfTtcclxuICAgICAgICAgICAgdGhpcy5zYXZlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInN0b3JhZ2VcIiwgKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChldmVudC5zdG9yYWdlQXJlYSA9PT0gbG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmlzQWN0aXZlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5pc1NtYXJ0RGV2VG9vbEFjdGl2ZU5hbWUpID09PSBcInRydWVcIjtcclxuICAgICAgICAgICAgICAgIGxldCBob3Vyc1RvU2F2ZVN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuc21hcnREZXZUb29sSG91cnNOYW1lKTtcclxuICAgICAgICAgICAgICAgIGlmIChob3Vyc1RvU2F2ZVN0cmluZykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG91cnNUb1NhdmUgPSBOdW1iZXIucGFyc2VJbnQoaG91cnNUb1NhdmVTdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IG1heE51bU9mU2F2ZWRDYWxscyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuc21hcnREZXZUb29sTWF4TmFtZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAobWF4TnVtT2ZTYXZlZENhbGxzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXhOdW1PZlNhdmVkQ2FsbHMgPSBOdW1iZXIucGFyc2VJbnQobWF4TnVtT2ZTYXZlZENhbGxzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc2V0VXBMb2NhbFN0b3JhZ2UoKTogdm9pZCB7XHJcbiAgICAgICAgbGV0IGtleXNPZkxvY2FsU3RvcmFnZSA9IE9iamVjdC5rZXlzKGxvY2FsU3RvcmFnZSk7XHJcbiAgICAgICAgaWYgKCFrZXlzT2ZMb2NhbFN0b3JhZ2UuaW5jbHVkZXModGhpcy5pc1NtYXJ0RGV2VG9vbEFjdGl2ZU5hbWUpKSB7XHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuaXNTbWFydERldlRvb2xBY3RpdmVOYW1lLCBcInRydWVcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHdyaXRlUmVzcG9uc2UoXHJcbiAgICAgICAgcmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PixcclxuICAgICAgICByZXNwb25zZTogSHR0cFJlc3BvbnNlPGFueT4gfCBIdHRwRXJyb3JSZXNwb25zZSxcclxuICAgICAgICByZXF1ZXN0RGF0ZTogRGF0ZSxcclxuICAgICAgICByZXNwb25zZURhdGU6IERhdGVcclxuICAgICk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2FuaXRpemVCeUxlbmd0aCgpO1xyXG4gICAgICAgIHRoaXMuc2FuaXRpemVCeVRpbWUoKTtcclxuXHJcbiAgICAgICAgbGV0IHJlcXVlc3RIZWFkZXI6IGFueSA9IHRoaXMuY3JlYXRlT2JqZWN0KHJlcXVlc3QuaGVhZGVycy5rZXlzKCksIHJlcXVlc3QuaGVhZGVycywgZmFsc2UpO1xyXG4gICAgICAgIGxldCByZXNwb25zZUhlYWRlcjogYW55ID0gdGhpcy5jcmVhdGVPYmplY3QoXHJcbiAgICAgICAgICAgIHJlc3BvbnNlLmhlYWRlcnMua2V5cygpLFxyXG4gICAgICAgICAgICByZXNwb25zZS5oZWFkZXJzLFxyXG4gICAgICAgICAgICBmYWxzZVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGxldCBfbG9jYWxTdG9yYWdlOiBhbnkgPSB0aGlzLmNyZWF0ZU9iamVjdChcclxuICAgICAgICAgICAgT2JqZWN0LmtleXMobG9jYWxTdG9yYWdlKS5maWx0ZXIoKGtleTogc3RyaW5nKSA9PiBrZXkgIT09IHRoaXMuc21hcnREZXZUb29sTmFtZSksXHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZSxcclxuICAgICAgICAgICAgdHJ1ZVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgbGV0IF9zZXNzaW9uU3RvcmFnZTogYW55ID0gdGhpcy5jcmVhdGVPYmplY3QoXHJcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHNlc3Npb25TdG9yYWdlKSxcclxuICAgICAgICAgICAgc2Vzc2lvblN0b3JhZ2UsXHJcbiAgICAgICAgICAgIHRydWVcclxuICAgICAgICApO1xyXG4gICAgICAgIGxldCBfY29va2llczogYW55ID0gdGhpcy5jb29raWVTZXJ2aWNlLmdldEFsbCgpO1xyXG5cclxuICAgICAgICB0aGlzLmRlc2NyaXB0b3IhLmFwaUNhbGxzID0gW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB1cmw6IHJlc3BvbnNlLnVybCxcclxuICAgICAgICAgICAgICAgIHJlcXVlc3RCb2R5OiByZXF1ZXN0LmJvZHksXHJcbiAgICAgICAgICAgICAgICByZXF1ZXN0SGVhZGVyLFxyXG4gICAgICAgICAgICAgICAgcmVxdWVzdERhdGUsXHJcbiAgICAgICAgICAgICAgICByZXF1ZXN0TWV0aG9kOiByZXF1ZXN0Lm1ldGhvZCxcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlQm9keTogKHJlc3BvbnNlIGFzIEh0dHBSZXNwb25zZTxhbnk+KS5ib2R5ID8/IG51bGwsXHJcbiAgICAgICAgICAgICAgICByZXNwb25zZUhlYWRlcixcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlU3RhdHVzOiByZXNwb25zZS5zdGF0dXMsXHJcbiAgICAgICAgICAgICAgICByZXNwb25zZVN0YXR1c1RleHQ6IHJlc3BvbnNlLnN0YXR1c1RleHQsXHJcbiAgICAgICAgICAgICAgICByZXNwb25zZURhdGUsXHJcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2U6IF9sb2NhbFN0b3JhZ2UsXHJcbiAgICAgICAgICAgICAgICBzZXNzaW9uU3RvcmFnZTogX3Nlc3Npb25TdG9yYWdlLFxyXG4gICAgICAgICAgICAgICAgY29va2llczogX2Nvb2tpZXMsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIC4uLnRoaXMuZGVzY3JpcHRvciEuYXBpQ2FsbHMsXHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyAhPT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMubmV3RXJyb3JzQ291bnQrKztcclxuICAgICAgICAgICAgdGhpcy5uZXdFcnJvcnNDb3VudENoYW5nZWQubmV4dCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zYXZlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJFcnJvcnMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5uZXdFcnJvcnNDb3VudCA9IDA7XHJcbiAgICAgICAgdGhpcy5uZXdFcnJvcnNDb3VudENoYW5nZWQubmV4dCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZU9iamVjdChrZXlzOiBzdHJpbmdbXSwgbWFwV2l0aFZhbHVlczogYW55LCB1c2VHZXRJdGVtOiBib29sZWFuKTogYW55IHtcclxuICAgICAgICBsZXQgbmV3T2JqZWN0OiBhbnkgPSB7fTtcclxuICAgICAgICBrZXlzLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh1c2VHZXRJdGVtKSB7XHJcbiAgICAgICAgICAgICAgICBuZXdPYmplY3Rba2V5XSA9IG1hcFdpdGhWYWx1ZXMuZ2V0SXRlbShrZXkpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbmV3T2JqZWN0W2tleV0gPSBtYXBXaXRoVmFsdWVzLmdldChrZXkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIG5ld09iamVjdDtcclxuICAgIH1cclxuXHJcbiAgICBzYW5pdGl6ZUJ5VGltZSgpOiB2b2lkIHtcclxuICAgICAgICBsZXQgbm93OiBEYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICB0aGlzLmRlc2NyaXB0b3IhLmFwaUNhbGxzID0gdGhpcy5kZXNjcmlwdG9yIS5hcGlDYWxscy5maWx0ZXIoXHJcbiAgICAgICAgICAgIChhcGlDYWxsOiBTbWFydERldlRvb2xBcGlDYWxsRGVzY3JpcHRvcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgbGV0IGhvdXJzQmV0d2VlbjogbnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBhcGlDYWxsLnJlcXVlc3REYXRlID09PSBcInN0cmluZ1wiKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaG91cnNCZXR3ZWVuID0gTWF0aC5mbG9vcihcclxuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5hYnMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3cuZ2V0TWlsbGlzZWNvbmRzKCkgLSBuZXcgRGF0ZShhcGlDYWxsLnJlcXVlc3REYXRlKS5nZXRNaWxsaXNlY29uZHMoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApIC8gMzZlNVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGhvdXJzQmV0d2VlbiA9IE1hdGguZmxvb3IoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguYWJzKG5vdy5nZXRNaWxsaXNlY29uZHMoKSAtIGFwaUNhbGwucmVxdWVzdERhdGUuZ2V0TWlsbGlzZWNvbmRzKCkpIC9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDM2ZTVcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiBob3Vyc0JldHdlZW4gPCB0aGlzLmhvdXJzVG9TYXZlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBzYW5pdGl6ZUJ5TGVuZ3RoKCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5kZXNjcmlwdG9yPy5hcGlDYWxscyAmJlxyXG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3IuYXBpQ2FsbHMubGVuZ3RoID4gdGhpcy5tYXhOdW1PZlNhdmVkQ2FsbHNcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgbGV0IGxlbmd0aCA9IHRoaXMuZGVzY3JpcHRvci5hcGlDYWxscy5sZW5ndGg7XHJcbiAgICAgICAgICAgIHRoaXMuZGVzY3JpcHRvci5hcGlDYWxscy5zcGxpY2UoXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1heE51bU9mU2F2ZWRDYWxscyAtIDEsXHJcbiAgICAgICAgICAgICAgICBsZW5ndGggLSB0aGlzLm1heE51bU9mU2F2ZWRDYWxsc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzYXZlKCk6IHZvaWQge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuc21hcnREZXZUb29sTmFtZSwgSlNPTi5zdHJpbmdpZnkodGhpcy5kZXNjcmlwdG9yKSk7XHJcbiAgICAgICAgICAgIHRoaXMuZGVzY3JpcHRvckNoYW5nZWQubmV4dCgpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcclxuICAgICAgICAgICAgLy8gbG9jYWxTdG9yYWdlLnNldEl0ZW0oKSB0aHJvd3MgYSBcIlF1b3RhRXhjZWVkZWRFcnJvclwiIERPTUV4Y2VwdGlvbiBleGNlcHRpb24gaWYgdGhlIG5ldyB2YWx1ZVxyXG4gICAgICAgICAgICAvLyBjb3VsZG4ndCBiZSBzZXQuIChTZXR0aW5nIGNvdWxkIGZhaWwgaWYsIGUuZy4sIHRoZSB1c2VyIGhhcyBkaXNhYmxlZCBzdG9yYWdlIGZvciB0aGUgc2l0ZSxcclxuICAgICAgICAgICAgLy8gb3IgaWYgdGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLilcclxuICAgICAgICAgICAgdGhpcy5zYW5pdGl6ZUJ5TGVuZ3RoKCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2F2ZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjbGVhcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRlc2NyaXB0b3IgPSB7XHJcbiAgICAgICAgICAgIGFwaUNhbGxzOiBbXSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuc2F2ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFB1cmVTdHJpbmcoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5zbWFydERldlRvb2xOYW1lKSE7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnREZXZUb29sRGVzY3JpcHRvciB7XHJcbiAgICBhcGlDYWxsczogU21hcnREZXZUb29sQXBpQ2FsbERlc2NyaXB0b3JbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydERldlRvb2xBcGlDYWxsRGVzY3JpcHRvciB7XHJcbiAgICB1cmw6IHN0cmluZyB8IG51bGw7XHJcbiAgICByZXNwb25zZUJvZHk6IGFueTtcclxuICAgIHJlc3BvbnNlSGVhZGVyOiBhbnk7XHJcbiAgICByZXNwb25zZVN0YXR1czogbnVtYmVyO1xyXG4gICAgcmVzcG9uc2VTdGF0dXNUZXh0OiBzdHJpbmc7XHJcbiAgICByZXNwb25zZURhdGU6IERhdGU7XHJcbiAgICByZXF1ZXN0SGVhZGVyOiBhbnk7XHJcbiAgICByZXF1ZXN0Qm9keTogYW55O1xyXG4gICAgcmVxdWVzdERhdGU6IERhdGU7XHJcbiAgICByZXF1ZXN0TWV0aG9kOiBzdHJpbmc7XHJcbiAgICBsb2NhbFN0b3JhZ2U6IGFueTtcclxuICAgIHNlc3Npb25TdG9yYWdlOiBhbnk7XHJcbiAgICBjb29raWVzOiBhbnk7XHJcbn1cclxuXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6IFwic21hcnREZXZUb29sRGF0ZVBpcGVcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0RGV2VG9vbERhdGVQaXBlIGV4dGVuZHMgRGF0ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIG92ZXJyaWRlIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBmb3JtYXQ6IHN0cmluZyA9IFwieXl5eS5NTS5kZC4gSDptbTpzc1wiKTogYW55IHtcclxuICAgICAgICByZXR1cm4gc3VwZXIudHJhbnNmb3JtKHZhbHVlLCBmb3JtYXQpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
1
+ import { DatePipe } from "@angular/common";
2
+ import { Injectable, Pipe } from "@angular/core";
3
+ import { Subject } from "rxjs";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../cookie-service/smart-cookie.service";
6
+ export class SmartDevToolService {
7
+ constructor(cookieService) {
8
+ this.cookieService = cookieService;
9
+ this.smartDevToolName = "smartDevTool";
10
+ this.isSmartDevToolActiveName = "smartDevToolActive";
11
+ this.isActive = false;
12
+ this.smartDevToolHoursName = "smartDevToolHours";
13
+ this.smartDevToolMaxName = "smartDevToolMaxCalls";
14
+ this.hoursToSave = 1;
15
+ this.maxNumOfSavedCalls = 50;
16
+ this.descriptorChanged = new Subject();
17
+ this.newErrorsCount = 0;
18
+ this.newErrorsCountChanged = new Subject();
19
+ this.setUpLocalStorage();
20
+ let apiCallsFromLocalStorage = localStorage.getItem(this.smartDevToolName);
21
+ if (apiCallsFromLocalStorage) {
22
+ this.descriptor = JSON.parse(apiCallsFromLocalStorage);
23
+ }
24
+ else {
25
+ this.descriptor = { apiCalls: [] };
26
+ this.save();
27
+ }
28
+ window.addEventListener("storage", (event) => {
29
+ if (event.storageArea === localStorage) {
30
+ this.isActive = localStorage.getItem(this.isSmartDevToolActiveName) === "true";
31
+ let hoursToSaveString = localStorage.getItem(this.smartDevToolHoursName);
32
+ if (hoursToSaveString) {
33
+ this.hoursToSave = Number.parseInt(hoursToSaveString);
34
+ }
35
+ let maxNumOfSavedCalls = localStorage.getItem(this.smartDevToolMaxName);
36
+ if (maxNumOfSavedCalls) {
37
+ this.maxNumOfSavedCalls = Number.parseInt(maxNumOfSavedCalls);
38
+ }
39
+ }
40
+ });
41
+ }
42
+ setUpLocalStorage() {
43
+ let keysOfLocalStorage = Object.keys(localStorage);
44
+ if (!keysOfLocalStorage.includes(this.isSmartDevToolActiveName)) {
45
+ localStorage.setItem(this.isSmartDevToolActiveName, "true");
46
+ }
47
+ }
48
+ writeResponse(request, response, requestDate, responseDate) {
49
+ this.sanitizeByLength();
50
+ this.sanitizeByTime();
51
+ let requestHeader = this.createObject(request.headers.keys(), request.headers, false);
52
+ let responseHeader = this.createObject(response.headers.keys(), response.headers, false);
53
+ let _localStorage = this.createObject(Object.keys(localStorage).filter((key) => key !== this.smartDevToolName), localStorage, true);
54
+ let _sessionStorage = this.createObject(Object.keys(sessionStorage), sessionStorage, true);
55
+ let _cookies = this.cookieService.getAll();
56
+ this.descriptor.apiCalls = [
57
+ {
58
+ url: response.url,
59
+ requestBody: request.body,
60
+ requestHeader,
61
+ requestDate,
62
+ requestMethod: request.method,
63
+ responseBody: response.body ?? null,
64
+ responseHeader,
65
+ responseStatus: response.status,
66
+ responseStatusText: response.statusText,
67
+ responseDate,
68
+ localStorage: _localStorage,
69
+ sessionStorage: _sessionStorage,
70
+ cookies: _cookies,
71
+ },
72
+ ...this.descriptor.apiCalls,
73
+ ];
74
+ if (response.status !== 200) {
75
+ this.newErrorsCount++;
76
+ this.newErrorsCountChanged.next();
77
+ }
78
+ this.save();
79
+ }
80
+ clearErrors() {
81
+ this.newErrorsCount = 0;
82
+ this.newErrorsCountChanged.next();
83
+ }
84
+ createObject(keys, mapWithValues, useGetItem) {
85
+ let newObject = {};
86
+ keys.forEach((key) => {
87
+ if (useGetItem) {
88
+ newObject[key] = mapWithValues.getItem(key);
89
+ }
90
+ else {
91
+ newObject[key] = mapWithValues.get(key);
92
+ }
93
+ });
94
+ return newObject;
95
+ }
96
+ sanitizeByTime() {
97
+ let now = new Date();
98
+ this.descriptor.apiCalls = this.descriptor.apiCalls.filter((apiCall) => {
99
+ let hoursBetween;
100
+ if (typeof apiCall.requestDate === "string") {
101
+ hoursBetween = Math.floor(Math.abs(now.getMilliseconds() - new Date(apiCall.requestDate).getMilliseconds()) / 36e5);
102
+ }
103
+ else {
104
+ hoursBetween = Math.floor(Math.abs(now.getMilliseconds() - apiCall.requestDate.getMilliseconds()) /
105
+ 36e5);
106
+ }
107
+ return hoursBetween < this.hoursToSave;
108
+ });
109
+ }
110
+ sanitizeByLength() {
111
+ if (this.descriptor?.apiCalls &&
112
+ this.descriptor.apiCalls.length > this.maxNumOfSavedCalls) {
113
+ let length = this.descriptor.apiCalls.length;
114
+ this.descriptor.apiCalls.splice(this.maxNumOfSavedCalls - 1, length - this.maxNumOfSavedCalls);
115
+ }
116
+ }
117
+ save() {
118
+ try {
119
+ localStorage.setItem(this.smartDevToolName, JSON.stringify(this.descriptor));
120
+ this.descriptorChanged.next();
121
+ }
122
+ catch (error) {
123
+ // localStorage.setItem() throws a "QuotaExceededError" DOMException exception if the new value
124
+ // couldn't be set. (Setting could fail if, e.g., the user has disabled storage for the site,
125
+ // or if the quota has been exceeded.)
126
+ this.sanitizeByLength();
127
+ this.save();
128
+ }
129
+ }
130
+ clear() {
131
+ this.descriptor = {
132
+ apiCalls: [],
133
+ };
134
+ this.save();
135
+ }
136
+ getPureString() {
137
+ return localStorage.getItem(this.smartDevToolName);
138
+ }
139
+ }
140
+ SmartDevToolService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolService, deps: [{ token: i1.SmartCookieService }], target: i0.ɵɵFactoryTarget.Injectable });
141
+ SmartDevToolService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolService, providedIn: "root" });
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolService, decorators: [{
143
+ type: Injectable,
144
+ args: [{
145
+ providedIn: "root",
146
+ }]
147
+ }], ctorParameters: function () { return [{ type: i1.SmartCookieService }]; } });
148
+ export class SmartDevToolDatePipe extends DatePipe {
149
+ transform(value, format = "yyyy.MM.dd. H:mm:ss") {
150
+ return super.transform(value, format);
151
+ }
152
+ }
153
+ SmartDevToolDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolDatePipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe });
154
+ SmartDevToolDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolDatePipe, name: "smartDevToolDatePipe" });
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartDevToolDatePipe, decorators: [{
156
+ type: Pipe,
157
+ args: [{
158
+ name: "smartDevToolDatePipe",
159
+ }]
160
+ }] });
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZGV2LXRvb2wuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3Nlc3Npb24vZGV2LXRvb2wvc21hcnQtZGV2LXRvb2wuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU0vQixNQUFNLE9BQU8sbUJBQW1CO0lBZ0I1QixZQUFvQixhQUFpQztRQUFqQyxrQkFBYSxHQUFiLGFBQWEsQ0FBb0I7UUFickQscUJBQWdCLEdBQVcsY0FBYyxDQUFDO1FBQzFDLDZCQUF3QixHQUFXLG9CQUFvQixDQUFDO1FBQ3hELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsMEJBQXFCLEdBQVcsbUJBQW1CLENBQUM7UUFDcEQsd0JBQW1CLEdBQVcsc0JBQXNCLENBQUM7UUFDckQsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsdUJBQWtCLEdBQVcsRUFBRSxDQUFDO1FBRWhDLHNCQUFpQixHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRWpELG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBQzNCLDBCQUFxQixHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBR2pELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXpCLElBQUksd0JBQXdCLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMzRSxJQUFJLHdCQUF3QixFQUFFO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1NBQzFE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QyxJQUFJLEVBQUUsQ0FBQztTQUNqQztRQUFDLE9BQU8sS0FBVSxFQUFFO1lBQ2pCLCtGQUErRjtZQUMvRiw2RkFBNkY7WUFDN0Ysc0NBQXNDO1lBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNmO0lBQ0wsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2QsUUFBUSxFQUFFLEVBQUU7U0FDZixDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxhQUFhO1FBQ1QsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBRSxDQUFDO0lBQ3hELENBQUM7O2lIQW5MUSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZoQixNQUFNOzRGQUVULG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7O0FBOE1ELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxRQUFRO0lBQ3JDLFNBQVMsQ0FBQyxLQUFVLEVBQUUsU0FBaUIscUJBQXFCO1FBQ2pFLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7a0hBSFEsb0JBQW9CO2dIQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFIaEMsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsc0JBQXNCO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UsIEh0dHBSZXF1ZXN0LCBIdHRwUmVzcG9uc2UgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBTbWFydENvb2tpZVNlcnZpY2UgfSBmcm9tIFwiLi4vY29va2llLXNlcnZpY2Uvc21hcnQtY29va2llLnNlcnZpY2VcIjtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiLFxufSlcbmV4cG9ydCBjbGFzcyBTbWFydERldlRvb2xTZXJ2aWNlIHtcbiAgICBkZXNjcmlwdG9yPzogU21hcnREZXZUb29sRGVzY3JpcHRvcjtcblxuICAgIHNtYXJ0RGV2VG9vbE5hbWU6IHN0cmluZyA9IFwic21hcnREZXZUb29sXCI7XG4gICAgaXNTbWFydERldlRvb2xBY3RpdmVOYW1lOiBzdHJpbmcgPSBcInNtYXJ0RGV2VG9vbEFjdGl2ZVwiO1xuICAgIGlzQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG4gICAgc21hcnREZXZUb29sSG91cnNOYW1lOiBzdHJpbmcgPSBcInNtYXJ0RGV2VG9vbEhvdXJzXCI7XG4gICAgc21hcnREZXZUb29sTWF4TmFtZTogc3RyaW5nID0gXCJzbWFydERldlRvb2xNYXhDYWxsc1wiO1xuICAgIGhvdXJzVG9TYXZlOiBudW1iZXIgPSAxO1xuICAgIG1heE51bU9mU2F2ZWRDYWxsczogbnVtYmVyID0gNTA7XG5cbiAgICBkZXNjcmlwdG9yQ2hhbmdlZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBuZXdFcnJvcnNDb3VudDogbnVtYmVyID0gMDtcbiAgICBuZXdFcnJvcnNDb3VudENoYW5nZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjb29raWVTZXJ2aWNlOiBTbWFydENvb2tpZVNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5zZXRVcExvY2FsU3RvcmFnZSgpO1xuXG4gICAgICAgIGxldCBhcGlDYWxsc0Zyb21Mb2NhbFN0b3JhZ2UgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnNtYXJ0RGV2VG9vbE5hbWUpO1xuICAgICAgICBpZiAoYXBpQ2FsbHNGcm9tTG9jYWxTdG9yYWdlKSB7XG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3IgPSBKU09OLnBhcnNlKGFwaUNhbGxzRnJvbUxvY2FsU3RvcmFnZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3IgPSB7IGFwaUNhbGxzOiBbXSB9O1xuICAgICAgICAgICAgdGhpcy5zYXZlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInN0b3JhZ2VcIiwgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQuc3RvcmFnZUFyZWEgPT09IGxvY2FsU3RvcmFnZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNBY3RpdmUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmlzU21hcnREZXZUb29sQWN0aXZlTmFtZSkgPT09IFwidHJ1ZVwiO1xuICAgICAgICAgICAgICAgIGxldCBob3Vyc1RvU2F2ZVN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuc21hcnREZXZUb29sSG91cnNOYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAoaG91cnNUb1NhdmVTdHJpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3Vyc1RvU2F2ZSA9IE51bWJlci5wYXJzZUludChob3Vyc1RvU2F2ZVN0cmluZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxldCBtYXhOdW1PZlNhdmVkQ2FsbHMgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnNtYXJ0RGV2VG9vbE1heE5hbWUpO1xuICAgICAgICAgICAgICAgIGlmIChtYXhOdW1PZlNhdmVkQ2FsbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXhOdW1PZlNhdmVkQ2FsbHMgPSBOdW1iZXIucGFyc2VJbnQobWF4TnVtT2ZTYXZlZENhbGxzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0VXBMb2NhbFN0b3JhZ2UoKTogdm9pZCB7XG4gICAgICAgIGxldCBrZXlzT2ZMb2NhbFN0b3JhZ2UgPSBPYmplY3Qua2V5cyhsb2NhbFN0b3JhZ2UpO1xuICAgICAgICBpZiAoIWtleXNPZkxvY2FsU3RvcmFnZS5pbmNsdWRlcyh0aGlzLmlzU21hcnREZXZUb29sQWN0aXZlTmFtZSkpIHtcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuaXNTbWFydERldlRvb2xBY3RpdmVOYW1lLCBcInRydWVcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZVJlc3BvbnNlKFxuICAgICAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LFxuICAgICAgICByZXNwb25zZTogSHR0cFJlc3BvbnNlPGFueT4gfCBIdHRwRXJyb3JSZXNwb25zZSxcbiAgICAgICAgcmVxdWVzdERhdGU6IERhdGUsXG4gICAgICAgIHJlc3BvbnNlRGF0ZTogRGF0ZVxuICAgICk6IHZvaWQge1xuICAgICAgICB0aGlzLnNhbml0aXplQnlMZW5ndGgoKTtcbiAgICAgICAgdGhpcy5zYW5pdGl6ZUJ5VGltZSgpO1xuXG4gICAgICAgIGxldCByZXF1ZXN0SGVhZGVyOiBhbnkgPSB0aGlzLmNyZWF0ZU9iamVjdChyZXF1ZXN0LmhlYWRlcnMua2V5cygpLCByZXF1ZXN0LmhlYWRlcnMsIGZhbHNlKTtcbiAgICAgICAgbGV0IHJlc3BvbnNlSGVhZGVyOiBhbnkgPSB0aGlzLmNyZWF0ZU9iamVjdChcbiAgICAgICAgICAgIHJlc3BvbnNlLmhlYWRlcnMua2V5cygpLFxuICAgICAgICAgICAgcmVzcG9uc2UuaGVhZGVycyxcbiAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICk7XG5cbiAgICAgICAgbGV0IF9sb2NhbFN0b3JhZ2U6IGFueSA9IHRoaXMuY3JlYXRlT2JqZWN0KFxuICAgICAgICAgICAgT2JqZWN0LmtleXMobG9jYWxTdG9yYWdlKS5maWx0ZXIoKGtleTogc3RyaW5nKSA9PiBrZXkgIT09IHRoaXMuc21hcnREZXZUb29sTmFtZSksXG4gICAgICAgICAgICBsb2NhbFN0b3JhZ2UsXG4gICAgICAgICAgICB0cnVlXG4gICAgICAgICk7XG4gICAgICAgIGxldCBfc2Vzc2lvblN0b3JhZ2U6IGFueSA9IHRoaXMuY3JlYXRlT2JqZWN0KFxuICAgICAgICAgICAgT2JqZWN0LmtleXMoc2Vzc2lvblN0b3JhZ2UpLFxuICAgICAgICAgICAgc2Vzc2lvblN0b3JhZ2UsXG4gICAgICAgICAgICB0cnVlXG4gICAgICAgICk7XG4gICAgICAgIGxldCBfY29va2llczogYW55ID0gdGhpcy5jb29raWVTZXJ2aWNlLmdldEFsbCgpO1xuXG4gICAgICAgIHRoaXMuZGVzY3JpcHRvciEuYXBpQ2FsbHMgPSBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdXJsOiByZXNwb25zZS51cmwsXG4gICAgICAgICAgICAgICAgcmVxdWVzdEJvZHk6IHJlcXVlc3QuYm9keSxcbiAgICAgICAgICAgICAgICByZXF1ZXN0SGVhZGVyLFxuICAgICAgICAgICAgICAgIHJlcXVlc3REYXRlLFxuICAgICAgICAgICAgICAgIHJlcXVlc3RNZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgICAgICAgICAgIHJlc3BvbnNlQm9keTogKHJlc3BvbnNlIGFzIEh0dHBSZXNwb25zZTxhbnk+KS5ib2R5ID8/IG51bGwsXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VIZWFkZXIsXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VTdGF0dXM6IHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgICAgICAgICAgICByZXNwb25zZVN0YXR1c1RleHQ6IHJlc3BvbnNlLnN0YXR1c1RleHQsXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VEYXRlLFxuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZTogX2xvY2FsU3RvcmFnZSxcbiAgICAgICAgICAgICAgICBzZXNzaW9uU3RvcmFnZTogX3Nlc3Npb25TdG9yYWdlLFxuICAgICAgICAgICAgICAgIGNvb2tpZXM6IF9jb29raWVzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC4uLnRoaXMuZGVzY3JpcHRvciEuYXBpQ2FsbHMsXG4gICAgICAgIF07XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICB0aGlzLm5ld0Vycm9yc0NvdW50Kys7XG4gICAgICAgICAgICB0aGlzLm5ld0Vycm9yc0NvdW50Q2hhbmdlZC5uZXh0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNhdmUoKTtcbiAgICB9XG5cbiAgICBjbGVhckVycm9ycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZXdFcnJvcnNDb3VudCA9IDA7XG4gICAgICAgIHRoaXMubmV3RXJyb3JzQ291bnRDaGFuZ2VkLm5leHQoKTtcbiAgICB9XG5cbiAgICBjcmVhdGVPYmplY3Qoa2V5czogc3RyaW5nW10sIG1hcFdpdGhWYWx1ZXM6IGFueSwgdXNlR2V0SXRlbTogYm9vbGVhbik6IGFueSB7XG4gICAgICAgIGxldCBuZXdPYmplY3Q6IGFueSA9IHt9O1xuICAgICAgICBrZXlzLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBpZiAodXNlR2V0SXRlbSkge1xuICAgICAgICAgICAgICAgIG5ld09iamVjdFtrZXldID0gbWFwV2l0aFZhbHVlcy5nZXRJdGVtKGtleSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG5ld09iamVjdFtrZXldID0gbWFwV2l0aFZhbHVlcy5nZXQoa2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBuZXdPYmplY3Q7XG4gICAgfVxuXG4gICAgc2FuaXRpemVCeVRpbWUoKTogdm9pZCB7XG4gICAgICAgIGxldCBub3c6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICB0aGlzLmRlc2NyaXB0b3IhLmFwaUNhbGxzID0gdGhpcy5kZXNjcmlwdG9yIS5hcGlDYWxscy5maWx0ZXIoXG4gICAgICAgICAgICAoYXBpQ2FsbDogU21hcnREZXZUb29sQXBpQ2FsbERlc2NyaXB0b3IpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgaG91cnNCZXR3ZWVuOiBudW1iZXI7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBhcGlDYWxsLnJlcXVlc3REYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIGhvdXJzQmV0d2VlbiA9IE1hdGguZmxvb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICBNYXRoLmFicyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3cuZ2V0TWlsbGlzZWNvbmRzKCkgLSBuZXcgRGF0ZShhcGlDYWxsLnJlcXVlc3REYXRlKS5nZXRNaWxsaXNlY29uZHMoKVxuICAgICAgICAgICAgICAgICAgICAgICAgKSAvIDM2ZTVcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBob3Vyc0JldHdlZW4gPSBNYXRoLmZsb29yKFxuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5hYnMobm93LmdldE1pbGxpc2Vjb25kcygpIC0gYXBpQ2FsbC5yZXF1ZXN0RGF0ZS5nZXRNaWxsaXNlY29uZHMoKSkgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDM2ZTVcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gaG91cnNCZXR3ZWVuIDwgdGhpcy5ob3Vyc1RvU2F2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBzYW5pdGl6ZUJ5TGVuZ3RoKCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3I/LmFwaUNhbGxzICYmXG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3IuYXBpQ2FsbHMubGVuZ3RoID4gdGhpcy5tYXhOdW1PZlNhdmVkQ2FsbHNcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBsZXQgbGVuZ3RoID0gdGhpcy5kZXNjcmlwdG9yLmFwaUNhbGxzLmxlbmd0aDtcbiAgICAgICAgICAgIHRoaXMuZGVzY3JpcHRvci5hcGlDYWxscy5zcGxpY2UoXG4gICAgICAgICAgICAgICAgdGhpcy5tYXhOdW1PZlNhdmVkQ2FsbHMgLSAxLFxuICAgICAgICAgICAgICAgIGxlbmd0aCAtIHRoaXMubWF4TnVtT2ZTYXZlZENhbGxzXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2F2ZSgpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuc21hcnREZXZUb29sTmFtZSwgSlNPTi5zdHJpbmdpZnkodGhpcy5kZXNjcmlwdG9yKSk7XG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3JDaGFuZ2VkLm5leHQoKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICAgICAgLy8gbG9jYWxTdG9yYWdlLnNldEl0ZW0oKSB0aHJvd3MgYSBcIlF1b3RhRXhjZWVkZWRFcnJvclwiIERPTUV4Y2VwdGlvbiBleGNlcHRpb24gaWYgdGhlIG5ldyB2YWx1ZVxuICAgICAgICAgICAgLy8gY291bGRuJ3QgYmUgc2V0LiAoU2V0dGluZyBjb3VsZCBmYWlsIGlmLCBlLmcuLCB0aGUgdXNlciBoYXMgZGlzYWJsZWQgc3RvcmFnZSBmb3IgdGhlIHNpdGUsXG4gICAgICAgICAgICAvLyBvciBpZiB0aGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuKVxuICAgICAgICAgICAgdGhpcy5zYW5pdGl6ZUJ5TGVuZ3RoKCk7XG4gICAgICAgICAgICB0aGlzLnNhdmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsZWFyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc2NyaXB0b3IgPSB7XG4gICAgICAgICAgICBhcGlDYWxsczogW10sXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuc2F2ZSgpO1xuICAgIH1cblxuICAgIGdldFB1cmVTdHJpbmcoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuc21hcnREZXZUb29sTmFtZSkhO1xuICAgIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTbWFydERldlRvb2xEZXNjcmlwdG9yIHtcbiAgICBhcGlDYWxsczogU21hcnREZXZUb29sQXBpQ2FsbERlc2NyaXB0b3JbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTbWFydERldlRvb2xBcGlDYWxsRGVzY3JpcHRvciB7XG4gICAgdXJsOiBzdHJpbmcgfCBudWxsO1xuICAgIHJlc3BvbnNlQm9keTogYW55O1xuICAgIHJlc3BvbnNlSGVhZGVyOiBhbnk7XG4gICAgcmVzcG9uc2VTdGF0dXM6IG51bWJlcjtcbiAgICByZXNwb25zZVN0YXR1c1RleHQ6IHN0cmluZztcbiAgICByZXNwb25zZURhdGU6IERhdGU7XG4gICAgcmVxdWVzdEhlYWRlcjogYW55O1xuICAgIHJlcXVlc3RCb2R5OiBhbnk7XG4gICAgcmVxdWVzdERhdGU6IERhdGU7XG4gICAgcmVxdWVzdE1ldGhvZDogc3RyaW5nO1xuICAgIGxvY2FsU3RvcmFnZTogYW55O1xuICAgIHNlc3Npb25TdG9yYWdlOiBhbnk7XG4gICAgY29va2llczogYW55O1xufVxuXG5AUGlwZSh7XG4gICAgbmFtZTogXCJzbWFydERldlRvb2xEYXRlUGlwZVwiLFxufSlcbmV4cG9ydCBjbGFzcyBTbWFydERldlRvb2xEYXRlUGlwZSBleHRlbmRzIERhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgb3ZlcnJpZGUgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nID0gXCJ5eXl5Lk1NLmRkLiBIOm1tOnNzXCIpOiBhbnkge1xuICAgICAgICByZXR1cm4gc3VwZXIudHJhbnNmb3JtKHZhbHVlLCBmb3JtYXQpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,12 +1,12 @@
1
- /*
2
- * Public API Surface of smart-session
3
- */
4
- export * from "./smart-session.service";
5
- export * from "./api/index";
6
- export * from "./smart-session.module";
7
- export * from "./dev-tool/smart-dev-tool-floating-button/smart-dev-tool-floating-button.component";
8
- export * from "./dev-tool/smart-dev-tool.service";
9
- export * from "./smart-session-handler.service";
10
- export * from "./smart-timer/smart-session-timer.component";
11
- export * from "./smart-timer/smart-session-timer.service";
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3Byb2plY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0ZBQW9GLENBQUM7QUFDbkcsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywyQ0FBMkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBzbWFydC1zZXNzaW9uXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSBcIi4vc21hcnQtc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2FwaS9pbmRleFwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9zbWFydC1zZXNzaW9uLm1vZHVsZVwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9kZXYtdG9vbC9zbWFydC1kZXYtdG9vbC1mbG9hdGluZy1idXR0b24vc21hcnQtZGV2LXRvb2wtZmxvYXRpbmctYnV0dG9uLmNvbXBvbmVudFwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9kZXYtdG9vbC9zbWFydC1kZXYtdG9vbC5zZXJ2aWNlXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL3NtYXJ0LXRpbWVyL3NtYXJ0LXNlc3Npb24tdGltZXIuY29tcG9uZW50XCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL3NtYXJ0LXRpbWVyL3NtYXJ0LXNlc3Npb24tdGltZXIuc2VydmljZVwiO1xyXG4iXX0=
1
+ /*
2
+ * Public API Surface of smart-session
3
+ */
4
+ export * from "./smart-session.service";
5
+ export * from "./api/index";
6
+ export * from "./smart-session.module";
7
+ export * from "./dev-tool/smart-dev-tool-floating-button/smart-dev-tool-floating-button.component";
8
+ export * from "./dev-tool/smart-dev-tool.service";
9
+ export * from "./smart-session-handler.service";
10
+ export * from "./smart-timer/smart-session-timer.component";
11
+ export * from "./smart-timer/smart-session-timer.service";
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3Byb2plY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0ZBQW9GLENBQUM7QUFDbkcsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywyQ0FBMkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygc21hcnQtc2Vzc2lvblxuICovXG5cbmV4cG9ydCAqIGZyb20gXCIuL3NtYXJ0LXNlc3Npb24uc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXBpL2luZGV4XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zbWFydC1zZXNzaW9uLm1vZHVsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZGV2LXRvb2wvc21hcnQtZGV2LXRvb2wtZmxvYXRpbmctYnV0dG9uL3NtYXJ0LWRldi10b29sLWZsb2F0aW5nLWJ1dHRvbi5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Rldi10b29sL3NtYXJ0LWRldi10b29sLnNlcnZpY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zbWFydC10aW1lci9zbWFydC1zZXNzaW9uLXRpbWVyLmNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc21hcnQtdGltZXIvc21hcnQtc2Vzc2lvbi10aW1lci5zZXJ2aWNlXCI7XG4iXX0=