http-request-manager 15.0.26 → 18.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. package/esm2022/http-request-manager.mjs +5 -0
  2. package/esm2022/lib/http-request-manager.module.mjs +146 -0
  3. package/esm2022/lib/http-request-services-demo/database-data-demo/database-data-demo.component.mjs +71 -0
  4. package/esm2022/lib/http-request-services-demo/http-request-services-demo.component.mjs +41 -0
  5. package/esm2022/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.mjs +173 -0
  6. package/esm2022/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.mjs +80 -0
  7. package/esm2022/lib/http-request-services-demo/request-manager-demo/file-downloader/file-download.module.mjs +42 -0
  8. package/esm2022/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.mjs +88 -0
  9. package/esm2022/lib/http-request-services-demo/request-manager-demo/file-downloader/models/download-labels-model.mjs +11 -0
  10. package/esm2022/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.mjs +29 -0
  11. package/esm2022/lib/http-request-services-demo/request-manager-demo/models/sample-ai-prompt.mjs +9 -0
  12. package/esm2022/lib/http-request-services-demo/request-manager-demo/models/sample-client-info.mjs +12 -0
  13. package/esm2022/lib/http-request-services-demo/request-manager-demo/models/sample-mapper-client-info.mjs +14 -0
  14. package/esm2022/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.mjs +315 -0
  15. package/esm2022/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.mjs +270 -0
  16. package/esm2022/lib/http-request-services-demo/request-manager-state-demo/services/state-manager-demo.service.mjs +67 -0
  17. package/esm2022/lib/index.mjs +4 -0
  18. package/esm2022/lib/interceptors/credentials.interceptor.mjs +14 -0
  19. package/esm2022/lib/interceptors/index.mjs +5 -0
  20. package/esm2022/lib/interceptors/models/error-settings.model.mjs +10 -0
  21. package/esm2022/lib/interceptors/proxy-debugger.interceptor.mjs +47 -0
  22. package/esm2022/lib/interceptors/request-error.interceptor.mjs +49 -0
  23. package/esm2022/lib/interceptors/request-header.interceptor.mjs +41 -0
  24. package/esm2022/lib/models/config-http-options.model.mjs +18 -0
  25. package/esm2022/lib/models/config-local-storage-options.model.mjs +12 -0
  26. package/esm2022/lib/models/config-options.model.mjs +12 -0
  27. package/esm2022/lib/models/config-token.model.mjs +8 -0
  28. package/esm2022/lib/models/data-type.enum.mjs +7 -0
  29. package/esm2022/lib/models/database-storage.model.mjs +10 -0
  30. package/esm2022/lib/models/index.mjs +7 -0
  31. package/esm2022/lib/models/retry-options.model.mjs +10 -0
  32. package/esm2022/lib/services/database-manager-services/database.manager.service.mjs +119 -0
  33. package/esm2022/lib/services/database-manager-services/db.storage.service.mjs +143 -0
  34. package/esm2022/lib/services/database-manager-services/index.mjs +4 -0
  35. package/esm2022/lib/services/database-manager-services/models/table-schema.mjs +20 -0
  36. package/esm2022/lib/services/index.mjs +6 -0
  37. package/esm2022/lib/services/local-storage-manager-service/index.mjs +3 -0
  38. package/esm2022/lib/services/local-storage-manager-service/local-storage-manager.service.mjs +302 -0
  39. package/esm2022/lib/services/local-storage-manager-service/models/global-store-options.model.mjs +13 -0
  40. package/esm2022/lib/services/local-storage-manager-service/models/index.mjs +6 -0
  41. package/esm2022/lib/services/local-storage-manager-service/models/setting-options.model.mjs +13 -0
  42. package/esm2022/lib/services/local-storage-manager-service/models/storage-data.model.mjs +10 -0
  43. package/esm2022/lib/services/local-storage-manager-service/models/storage-option.model.mjs +12 -0
  44. package/esm2022/lib/services/local-storage-manager-service/models/storage-type.enum.mjs +7 -0
  45. package/esm2022/lib/services/request-manager-services/http-manager.service.mjs +207 -0
  46. package/esm2022/lib/services/request-manager-services/index.mjs +5 -0
  47. package/esm2022/lib/services/request-manager-services/request.service.mjs +189 -0
  48. package/esm2022/lib/services/request-manager-services/rxjs-operators/countdown.mjs +9 -0
  49. package/esm2022/lib/services/request-manager-services/rxjs-operators/delay-retry.mjs +10 -0
  50. package/esm2022/lib/services/request-manager-services/rxjs-operators/index.mjs +5 -0
  51. package/esm2022/lib/services/request-manager-services/rxjs-operators/request-polling.mjs +14 -0
  52. package/esm2022/lib/services/request-manager-services/rxjs-operators/request-streaming.mjs +19 -0
  53. package/esm2022/lib/services/request-manager-state-service/http-manager-state.store.mjs +267 -0
  54. package/esm2022/lib/services/request-manager-state-service/index.mjs +3 -0
  55. package/esm2022/lib/services/request-manager-state-service/models/api-request.model.mjs +20 -0
  56. package/esm2022/lib/services/request-manager-state-service/models/index.mjs +3 -0
  57. package/esm2022/lib/services/request-manager-state-service/models/request-options.model.mjs +10 -0
  58. package/esm2022/lib/services/utils/app.service.mjs +26 -0
  59. package/esm2022/lib/services/utils/encryption/asymmetrical-encryption.service.mjs +186 -0
  60. package/esm2022/lib/services/utils/encryption/encryption-test.service.mjs +35 -0
  61. package/esm2022/lib/services/utils/encryption/index.mjs +4 -0
  62. package/esm2022/lib/services/utils/encryption/random.mjs +52 -0
  63. package/esm2022/lib/services/utils/encryption/symmetrical-encryption.service.mjs +77 -0
  64. package/esm2022/lib/services/utils/headers.service.mjs +21 -0
  65. package/esm2022/lib/services/utils/index.mjs +6 -0
  66. package/esm2022/lib/services/utils/object-merger.service.mjs +50 -0
  67. package/esm2022/lib/services/utils/path-query.service.mjs +54 -0
  68. package/esm2022/lib/services/utils/utils.service.mjs +155 -0
  69. package/esm2022/public-api.mjs +11 -0
  70. package/fesm2022/http-request-manager.mjs +3444 -0
  71. package/fesm2022/http-request-manager.mjs.map +1 -0
  72. package/http-request-manager-18.0.1.tgz +0 -0
  73. package/index.d.ts +5 -0
  74. package/lib/http-request-manager.module.d.ts +33 -0
  75. package/lib/http-request-services-demo/database-data-demo/database-data-demo.component.d.ts +19 -0
  76. package/lib/http-request-services-demo/http-request-services-demo.component.d.ts +24 -0
  77. package/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.d.ts +56 -0
  78. package/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.d.ts +26 -0
  79. package/lib/http-request-services-demo/request-manager-demo/file-downloader/file-download.module.d.ts +13 -0
  80. package/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.d.ts +27 -0
  81. package/lib/http-request-services-demo/request-manager-demo/file-downloader/models/download-labels-model.d.ts +12 -0
  82. package/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.d.ts +16 -0
  83. package/lib/http-request-services-demo/request-manager-demo/models/sample-ai-prompt.d.ts +8 -0
  84. package/lib/http-request-services-demo/request-manager-demo/models/sample-client-info.d.ts +14 -0
  85. package/lib/http-request-services-demo/request-manager-demo/models/sample-mapper-client-info.d.ts +14 -0
  86. package/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.d.ts +107 -0
  87. package/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.d.ts +122 -0
  88. package/lib/http-request-services-demo/request-manager-state-demo/services/state-manager-demo.service.d.ts +15 -0
  89. package/lib/index.d.ts +3 -0
  90. package/lib/interceptors/credentials.interceptor.d.ts +8 -0
  91. package/{src/lib/interceptors/index.ts → lib/interceptors/index.d.ts} +0 -2
  92. package/lib/interceptors/models/error-settings.model.d.ts +10 -0
  93. package/lib/interceptors/proxy-debugger.interceptor.d.ts +12 -0
  94. package/lib/interceptors/request-error.interceptor.d.ts +10 -0
  95. package/lib/interceptors/request-header.interceptor.d.ts +15 -0
  96. package/lib/models/config-http-options.model.d.ts +21 -0
  97. package/lib/models/config-local-storage-options.model.d.ts +13 -0
  98. package/lib/models/config-options.model.d.ts +12 -0
  99. package/{src/lib/models/config-token.model.ts → lib/models/config-token.model.d.ts} +1 -2
  100. package/lib/models/data-type.enum.d.ts +5 -0
  101. package/lib/models/database-storage.model.d.ts +10 -0
  102. package/lib/models/index.d.ts +6 -0
  103. package/lib/models/retry-options.model.d.ts +10 -0
  104. package/lib/services/database-manager-services/database.manager.service.d.ts +31 -0
  105. package/lib/services/database-manager-services/db.storage.service.d.ts +26 -0
  106. package/{src/lib/services/database-manager-services/index.ts → lib/services/database-manager-services/index.d.ts} +0 -1
  107. package/lib/services/database-manager-services/models/table-schema.d.ts +11 -0
  108. package/{src/lib/services/index.ts → lib/services/index.d.ts} +0 -4
  109. package/lib/services/local-storage-manager-service/index.d.ts +2 -0
  110. package/lib/services/local-storage-manager-service/local-storage-manager.service.d.ts +86 -0
  111. package/lib/services/local-storage-manager-service/models/global-store-options.model.d.ts +15 -0
  112. package/{src/lib/services/local-storage-manager-service/models/index.ts → lib/services/local-storage-manager-service/models/index.d.ts} +1 -2
  113. package/lib/services/local-storage-manager-service/models/setting-options.model.d.ts +15 -0
  114. package/lib/services/local-storage-manager-service/models/storage-data.model.d.ts +10 -0
  115. package/lib/services/local-storage-manager-service/models/storage-option.model.d.ts +13 -0
  116. package/lib/services/local-storage-manager-service/models/storage-type.enum.d.ts +5 -0
  117. package/lib/services/request-manager-services/http-manager.service.d.ts +41 -0
  118. package/{src/lib/services/request-manager-services/index.ts → lib/services/request-manager-services/index.d.ts} +0 -2
  119. package/lib/services/request-manager-services/request.service.d.ts +27 -0
  120. package/lib/services/request-manager-services/rxjs-operators/countdown.d.ts +2 -0
  121. package/lib/services/request-manager-services/rxjs-operators/delay-retry.d.ts +2 -0
  122. package/lib/services/request-manager-services/rxjs-operators/request-polling.d.ts +7 -0
  123. package/lib/services/request-manager-services/rxjs-operators/request-streaming.d.ts +2 -0
  124. package/lib/services/request-manager-state-service/http-manager-state.store.d.ts +51 -0
  125. package/{src/lib/services/request-manager-state-service/index.ts → lib/services/request-manager-state-service/index.d.ts} +0 -1
  126. package/lib/services/request-manager-state-service/models/api-request.model.d.ts +27 -0
  127. package/{src/lib/services/request-manager-state-service/models/index.ts → lib/services/request-manager-state-service/models/index.d.ts} +0 -1
  128. package/lib/services/request-manager-state-service/models/request-options.model.d.ts +10 -0
  129. package/lib/services/utils/app.service.d.ts +8 -0
  130. package/lib/services/utils/encryption/asymmetrical-encryption.service.d.ts +17 -0
  131. package/lib/services/utils/encryption/encryption-test.service.d.ts +10 -0
  132. package/{src/lib/services/utils/encryption/index.ts → lib/services/utils/encryption/index.d.ts} +0 -2
  133. package/lib/services/utils/encryption/random.d.ts +7 -0
  134. package/lib/services/utils/encryption/symmetrical-encryption.service.d.ts +14 -0
  135. package/lib/services/utils/headers.service.d.ts +10 -0
  136. package/{src/lib/services/utils/index.ts → lib/services/utils/index.d.ts} +0 -2
  137. package/lib/services/utils/object-merger.service.d.ts +12 -0
  138. package/lib/services/utils/path-query.service.d.ts +11 -0
  139. package/lib/services/utils/utils.service.d.ts +24 -0
  140. package/package.json +14 -1
  141. package/{src/public-api.ts → public-api.d.ts} +0 -7
  142. package/ng-package.json +0 -8
  143. package/src/lib/http-request-manager.module.ts +0 -101
  144. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.html +0 -3
  145. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.scss +0 -0
  146. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.ts +0 -105
  147. package/src/lib/http-request-services-demo/http-request-services-demo.component.html +0 -64
  148. package/src/lib/http-request-services-demo/http-request-services-demo.component.scss +0 -6
  149. package/src/lib/http-request-services-demo/http-request-services-demo.component.ts +0 -34
  150. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.html +0 -195
  151. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.scss +0 -17
  152. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.ts +0 -205
  153. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.html +0 -59
  154. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.scss +0 -60
  155. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.ts +0 -71
  156. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-download.module.ts +0 -28
  157. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.html +0 -10
  158. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.scss +0 -29
  159. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.ts +0 -99
  160. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/models/download-labels-model.ts +0 -22
  161. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.html +0 -8
  162. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.scss +0 -19
  163. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.ts +0 -25
  164. package/src/lib/http-request-services-demo/request-manager-demo/models/app-session.model.ts +0 -30
  165. package/src/lib/http-request-services-demo/request-manager-demo/models/app.model.ts +0 -19
  166. package/src/lib/http-request-services-demo/request-manager-demo/models/get-sample.model.ts +0 -25
  167. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-ai-prompt.ts +0 -19
  168. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client-details.ts +0 -24
  169. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client-info.ts +0 -30
  170. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client.model.ts +0 -49
  171. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-mapper-client-info.ts +0 -33
  172. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.html +0 -336
  173. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.scss +0 -24
  174. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.ts +0 -403
  175. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.html +0 -328
  176. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.scss +0 -24
  177. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.ts +0 -347
  178. package/src/lib/http-request-services-demo/request-manager-state-demo/services/state-manager-demo.service.ts +0 -88
  179. package/src/lib/index.ts +0 -3
  180. package/src/lib/interceptors/credentials.interceptor.ts +0 -18
  181. package/src/lib/interceptors/models/error-settings.model.ts +0 -22
  182. package/src/lib/interceptors/proxy-debugger.interceptor.ts +0 -46
  183. package/src/lib/interceptors/request-error.interceptor.ts +0 -65
  184. package/src/lib/interceptors/request-header.interceptor.ts +0 -58
  185. package/src/lib/models/config-http-options.model.ts +0 -42
  186. package/src/lib/models/config-local-storage-options.model.ts +0 -27
  187. package/src/lib/models/config-options.model.ts +0 -27
  188. package/src/lib/models/data-type.enum.ts +0 -5
  189. package/src/lib/models/database-storage.model.ts +0 -24
  190. package/src/lib/models/index.ts +0 -9
  191. package/src/lib/models/retry-options.model.ts +0 -22
  192. package/src/lib/services/database-manager-services/database.manager.service.ts +0 -193
  193. package/src/lib/services/database-manager-services/db.storage.service.ts +0 -191
  194. package/src/lib/services/database-manager-services/models/table-schema.ts +0 -35
  195. package/src/lib/services/local-storage-manager-service/index.ts +0 -2
  196. package/src/lib/services/local-storage-manager-service/local-storage-manager.service.spec.ts +0 -71
  197. package/src/lib/services/local-storage-manager-service/local-storage-manager.service.ts +0 -421
  198. package/src/lib/services/local-storage-manager-service/models/global-store-options.model.ts +0 -30
  199. package/src/lib/services/local-storage-manager-service/models/setting-options.model.ts +0 -30
  200. package/src/lib/services/local-storage-manager-service/models/storage-data.model.ts +0 -24
  201. package/src/lib/services/local-storage-manager-service/models/storage-option.model.ts +0 -29
  202. package/src/lib/services/local-storage-manager-service/models/storage-type.enum.ts +0 -5
  203. package/src/lib/services/request-manager-services/README.md +0 -268
  204. package/src/lib/services/request-manager-services/http-manager.service.spec.ts +0 -230
  205. package/src/lib/services/request-manager-services/http-manager.service.ts +0 -274
  206. package/src/lib/services/request-manager-services/request.service.ts +0 -261
  207. package/src/lib/services/request-manager-services/rxjs-operators/countdown.ts +0 -17
  208. package/src/lib/services/request-manager-services/rxjs-operators/delay-retry.ts +0 -16
  209. package/src/lib/services/request-manager-services/rxjs-operators/request-polling.ts +0 -21
  210. package/src/lib/services/request-manager-services/rxjs-operators/request-streaming.ts +0 -32
  211. package/src/lib/services/request-manager-state-service/http-manager-state.store.ts +0 -402
  212. package/src/lib/services/request-manager-state-service/models/api-request.model.ts +0 -50
  213. package/src/lib/services/request-manager-state-service/models/request-options.model.ts +0 -22
  214. package/src/lib/services/utils/app.service.spec.ts +0 -25
  215. package/src/lib/services/utils/app.service.ts +0 -21
  216. package/src/lib/services/utils/encryption/README.md +0 -79
  217. package/src/lib/services/utils/encryption/asymmetrical-encryption.service.ts +0 -282
  218. package/src/lib/services/utils/encryption/encryption-test.service.ts +0 -39
  219. package/src/lib/services/utils/encryption/random.ts +0 -69
  220. package/src/lib/services/utils/encryption/symmetrical-encryption.service.ts +0 -93
  221. package/src/lib/services/utils/headers.service.spec.ts +0 -80
  222. package/src/lib/services/utils/headers.service.ts +0 -18
  223. package/src/lib/services/utils/object-merger.service.spec.ts +0 -16
  224. package/src/lib/services/utils/object-merger.service.ts +0 -60
  225. package/src/lib/services/utils/path-query.service.spec.ts +0 -117
  226. package/src/lib/services/utils/path-query.service.ts +0 -69
  227. package/src/lib/services/utils/utils.service.spec.ts +0 -164
  228. package/src/lib/services/utils/utils.service.ts +0 -192
  229. package/tsconfig.lib.json +0 -32
  230. package/tsconfig.lib.prod.json +0 -10
  231. package/tsconfig.spec.json +0 -14
  232. /package/{src/lib/services/request-manager-services/rxjs-operators/index.ts → lib/services/request-manager-services/rxjs-operators/index.d.ts} +0 -0
@@ -1,205 +0,0 @@
1
- import { Component, Inject, inject, OnInit, ViewEncapsulation } from '@angular/core';
2
- import { LocalStorageManagerService, SettingOptions, StorageOption, StorageType } from '../../services/local-storage-manager-service';
3
- import { FormBuilder, Validators } from '@angular/forms';
4
- import { BehaviorSubject, EMPTY, Observable, of } from 'rxjs';
5
- import { ConfigOptions, LocalStorageOptions, UtilsService } from '../../services';
6
- import { switchMap, tap, map } from 'rxjs/operators';
7
- import { CONFIG_SETTINGS_TOKEN } from '../../models/config-token.model';
8
-
9
- @Component({
10
- selector: 'app-local-storage-demo',
11
- templateUrl: './local-storage-demo.component.html',
12
- styleUrls: ['./local-storage-demo.component.scss'],
13
- encapsulation: ViewEncapsulation.None
14
- })
15
- export class LocalStorageDemoComponent implements OnInit {
16
-
17
- fb = inject(FormBuilder)
18
- utils = inject(UtilsService)
19
-
20
- type$ = new BehaviorSubject(StorageType.GLOBAL)
21
- get type() {
22
- return (this.typeControl.value) ? +this.typeControl.value : 0
23
- }
24
-
25
- typeControl = this.fb.control(StorageType.GLOBAL.toString())
26
-
27
- localStorageManagerService = inject(LocalStorageManagerService)
28
-
29
- settings$: Observable<any> = this.localStorageManagerService.settings$
30
-
31
- setting$ = (store: string) => this.localStorageManagerService.setting$(store)
32
-
33
- storageForm = this.fb.group({
34
- store: this.fb.control<string|null>(null),
35
- type: 'local',
36
- settingType: 'local',
37
- encrypted: false,
38
- data: this.fb.control<string>('', Validators.required),
39
- })
40
-
41
- newStoreForm = this.fb.group({
42
- name: this.fb.control<string|null>(null, Validators.required),
43
- storage: 'local',
44
- encrypted: false,
45
- data: this.fb.control<string>('', Validators.required),
46
- expiresIn: this.fb.control('0')
47
- })
48
-
49
- store$?: Observable<any>
50
-
51
- storeData$ = this.storageForm.get('store')?.valueChanges
52
- .pipe(
53
- switchMap((data: any) => {
54
- return data
55
- ? this.localStorageManagerService.store$(data.name)
56
- : of('')
57
- }),
58
- tap(data => {
59
- this.storageForm.get('data')?.patchValue(data, { emitEvent: false })
60
- })
61
- )
62
-
63
- expiresIn = (epoch: number) => this.utils.expiresIn(epoch)
64
-
65
- get isValid() {
66
- return this.newStoreForm.valid
67
- }
68
-
69
- get isValidData() {
70
- return this.storageForm.valid
71
- }
72
-
73
- isValidJSON = (str: string) => {
74
- try {
75
- JSON.parse(str)
76
- return true
77
- } catch (e) {
78
- return false
79
- }
80
- }
81
-
82
- displayedColumns: string[] = ['name', 'id', 'encrypted', 'expires', "option"];
83
-
84
- filterData = (values: SettingOptions[]) => {
85
- if(!values) return []
86
- return values.filter((item: any) => item.options.storage === +this.type)
87
- }
88
-
89
- data$?: Observable<any>
90
-
91
- store: any
92
-
93
- create = false
94
-
95
- storeProps?: LocalStorageOptions
96
- options?: SettingOptions
97
-
98
- constructor(@Inject(CONFIG_SETTINGS_TOKEN) private configOptions?: ConfigOptions) { }
99
-
100
- ngOnInit() {
101
-
102
- this.storeProps = this.configOptions?.LocalStorageOptions
103
- this.options = this.storeProps?.options
104
-
105
- if(this.options?.storage) {
106
- this.typeControl.patchValue(this.options.storage.toString())
107
- this.typeControl.disable()
108
- } else {
109
- this.typeControl.enable()
110
- }
111
-
112
- if(this.options?.expiresIn) {
113
- this.newStoreForm.get('expiresIn')?.patchValue(this.options.expiresIn)
114
- this.newStoreForm.get('expiresIn')?.disable()
115
- } else {
116
- this.newStoreForm.get('expiresIn')?.enable()
117
- }
118
-
119
- if(this.options?.encrypted) {
120
- this.newStoreForm.get('encrypted')?.patchValue(this.options.encrypted)
121
- this.newStoreForm.get('encrypted')?.disable()
122
- } else {
123
- this.newStoreForm.get('encrypted')?.enable()
124
- }
125
-
126
- }
127
-
128
- onCreateStore() {
129
-
130
- if(!this.isValid) return
131
-
132
- const store = this.newStoreForm.value
133
- if(!store.name || store.name === '') return
134
-
135
- const options = { storage: this.type, encrypted: store.encrypted, expiresIn: store.expiresIn }
136
-
137
- this.localStorageManagerService.createStore({
138
- name: store.name,
139
- data: store.data,
140
- options: SettingOptions.adapt(options)
141
- })
142
-
143
- this.newStoreForm.reset()
144
- this.create = false
145
- }
146
-
147
- onUpdateStore(store: any) {
148
-
149
- if(!this.storageForm.valid) return
150
-
151
- const storeData = this.storageForm.value
152
-
153
- const data = JSON.parse(storeData.data || '')
154
-
155
- const type = (storeData.type === 'local') ? StorageType.GLOBAL : StorageType.SESSION
156
-
157
- this.localStorageManagerService.updateStore({
158
- name: store.name,
159
- data
160
- })
161
-
162
- }
163
-
164
- onSelectedRow(store: any) {
165
- this.store = store
166
- this.data$ = this.localStorageManagerService.store$(store.name).pipe(map(item => JSON.stringify(item)))
167
- this.create = false
168
- }
169
-
170
- onCreate() {
171
- this.onCancel()
172
- this.create = true
173
- }
174
-
175
- onDelete(store: StorageOption) {
176
-
177
- this.localStorageManagerService.deleteStore({
178
- name: store.name,
179
- })
180
-
181
- this.onCancel()
182
- }
183
-
184
- onCancel() {
185
- this.data$ = EMPTY
186
- this.store = null
187
- this.create = false
188
- }
189
-
190
- onUpdate(store: StorageOption, data: any) {
191
-
192
- this.localStorageManagerService.updateStore({
193
- name: store.name,
194
- data: JSON.parse(data)
195
- })
196
-
197
- this.onCancel()
198
-
199
- }
200
-
201
- onReset() {
202
- this.localStorageManagerService.resetStore()
203
- }
204
-
205
- }
@@ -1,59 +0,0 @@
1
- <ng-container *ngIf="!isPending; else DOWNLOADING">
2
- <ng-container *ngIf="hasError; else NORMAL">
3
- <div class="width center-txt" style="margin-bottom: 4px;">
4
- <mat-icon color="warn" class="warn-icon">warning</mat-icon>
5
- </div>
6
- </ng-container>
7
- <ng-template #NORMAL>
8
- <ng-container *ngIf="active; else ACTION">
9
-
10
- <div class="container-obj">
11
- <div class="centered-obj-div">
12
- <mat-progress-spinner
13
- color="primary"
14
- mode="indeterminate"
15
- [diameter]="44"
16
- ></mat-progress-spinner>
17
- </div>
18
- </div>
19
-
20
- </ng-container>
21
- <ng-template #ACTION>
22
- <button data-tracking="export-btn" mat-icon-button (click)="onAction()" class="icon-button" [disabled]="disabled">
23
- <mat-icon class="custom-icon">file_download</mat-icon>
24
- </button>
25
- </ng-template>
26
- </ng-template>
27
- </ng-container>
28
-
29
- <ng-template #DOWNLOADING>
30
- <div
31
- class="spinner-container"
32
- *ngIf="(progress > 0 && progress < 100); else INDETERMINATE"
33
- >
34
- <div class="spinner-background">
35
- {{progress}}%
36
- </div>
37
- <mat-progress-spinner
38
- color="primary"
39
- [mode]="mode"
40
- [value]="progress"
41
- [diameter]="44"
42
- ></mat-progress-spinner>
43
- </div>
44
- <ng-template #INDETERMINATE>
45
- <div class="container-obj">
46
- <div class="centered-obj-div">
47
- <mat-progress-spinner
48
- color="primary"
49
- mode="indeterminate"
50
- [diameter]="44"
51
- ></mat-progress-spinner>
52
- </div>
53
- </div>
54
- </ng-template>
55
-
56
- </ng-template>
57
-
58
-
59
-
@@ -1,60 +0,0 @@
1
- :not(spinner-container).spinner-container {
2
- position: relative;
3
-
4
- .spinner-background {
5
- position: absolute;
6
- width: 44px;
7
- height: 44px;
8
- font-size: 12px;
9
- line-height: 32px;
10
- text-align: center;
11
- overflow: hidden;
12
- border-radius: 50%;
13
- border: solid 5px whitesmoke;
14
- }
15
-
16
- }
17
-
18
- .center-txt {
19
- align-content: center;
20
- text-align: -webkit-center;
21
- }
22
-
23
- .width {
24
- width: 48px;
25
- height: 48px;
26
- }
27
-
28
- .icon-button {
29
- display: flex;
30
- align-items: center;
31
- justify-content: center;
32
- width: 48px;
33
- height: 48px;
34
- padding: 0;
35
- }
36
-
37
- // .custom-icon {
38
- // font-size: 32px;
39
- // line-height: 1;
40
- // position: relative;
41
- // left: -4px;
42
- // }
43
-
44
- .container-obj {
45
- display: flex;
46
- justify-content: center;
47
- align-items: center;
48
- width: 48px;
49
- height: 48px;
50
- }
51
-
52
- .centered-obj-div {
53
- text-align: center
54
- }
55
-
56
- // .warn-icon {
57
- // position: relative;
58
- // top: 6px;
59
- // width: 48px;
60
- // }
@@ -1,71 +0,0 @@
1
- import { Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation } from '@angular/core';
2
- import { ProgressSpinnerMode } from '@angular/material/progress-spinner';
3
- import { Subscription, timer } from 'rxjs';
4
-
5
- @Component({
6
- selector: 'app-download-file',
7
- templateUrl: './download-file.component.html',
8
- styleUrls: ['./download-file.component.scss'],
9
- encapsulation: ViewEncapsulation.None,
10
- })
11
- export class DownloadFileComponent implements OnInit {
12
-
13
- private subscriptions = new Subscription();
14
-
15
- @Input() event?: Function;
16
- @Input() displayError = 3; // seconds
17
- @Input() diameter = 32;
18
- @Input() mode: ProgressSpinnerMode = 'determinate';
19
- @Input() isPending = false;
20
-
21
- @Input() active = false;
22
- @Input() disabled = false;
23
-
24
- @Output() error = new EventEmitter<void>();
25
-
26
- private _progress = 0;
27
- @Input() set progress(value: any) {
28
- this._progress = value ?? 0;
29
- }
30
-
31
- get progress() {
32
- return this._progress;
33
- }
34
-
35
- private _hasError = false;
36
- private errorTimerActive = false;
37
-
38
- @Input() set hasError(value: boolean | any) {
39
-
40
- this._hasError = !!value;
41
-
42
- if (this._hasError && !this.errorTimerActive) {
43
- this.errorTimerActive = true;
44
- this.active = false;
45
- this.error.emit()
46
- this.subscriptions.add(
47
- timer(this.displayError * 1000)
48
- .subscribe((err) => {
49
- this._hasError = false;
50
- this.errorTimerActive = false;
51
- })
52
- );
53
- }
54
-
55
- }
56
-
57
- get hasError() {
58
- return this._hasError;
59
- }
60
-
61
- ngOnInit() {}
62
-
63
- onAction() {
64
- this.isPending = false
65
- if (this.event) this.event()
66
- }
67
-
68
- ngOnDestroy() {
69
- this.subscriptions.unsubscribe()
70
- }
71
- }
@@ -1,28 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
-
4
- import { DownloadFileComponent } from './download-file/download-file.component';
5
- import { FileDownloaderComponent } from './file-downloader.component';
6
-
7
- import { SpinnerComponent } from './spinner/spinner.component';
8
- import { MatIconModule } from '@angular/material/icon';
9
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
10
- import { MatButtonModule } from '@angular/material/button';
11
-
12
- @NgModule({
13
- imports: [
14
- CommonModule,
15
- MatIconModule,
16
- MatProgressSpinnerModule,
17
- MatButtonModule,
18
- ],
19
- declarations: [
20
- SpinnerComponent,
21
- DownloadFileComponent,
22
- FileDownloaderComponent,
23
- ],
24
- exports: [
25
- FileDownloaderComponent
26
- ]
27
- })
28
- export class FileDownloaderModule { }
@@ -1,10 +0,0 @@
1
- <app-download-file
2
- [disabled]="disabled"
3
- [displayError]="3"
4
- [event]="onDownloadStreaming.bind(this)"
5
- [isPending]="(isPending$ | async) || false"
6
- [progress]="(progress$ | async)"
7
- [hasError]="(error$ | async)"
8
- (error)="onError(labels.error)"
9
- [active]="active"
10
- ></app-download-file>
@@ -1,29 +0,0 @@
1
-
2
- $snackBarTextColor: white;
3
- $snackBarBackgroundNormal: #F44336;
4
- $snackBarActionColor: white;
5
-
6
- .snackBarInfo {
7
- background-color: $snackBarBackgroundNormal;
8
- color: $snackBarTextColor;
9
- }
10
- .mat-simple-snackbar > span {
11
- font-weight: bold;
12
- }
13
- .mat-simple-snackbar-action {
14
- .mat-button {
15
- .mat-button-wrapper {
16
- color: $snackBarActionColor;
17
- }
18
- }
19
- }
20
-
21
- .cdk-overlay-pane > .mat-snack-bar-container {
22
- width: 100%;
23
- }
24
-
25
-
26
- .mat-snack-bar-container {
27
- max-width: 100% !important;
28
- width: 100%;
29
- }
@@ -1,99 +0,0 @@
1
- import { Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation } from '@angular/core';
2
- import { catchError, distinctUntilChanged, finalize } from 'rxjs/operators';
3
-
4
- import { ToastColors, ToastDisplay } from 'toast-message-display';
5
-
6
- import { DownloadLabels } from './models/download-labels-model';
7
- import { HTTPManagerService } from '../../../services/request-manager-services';
8
- import { ApiRequest } from '../../../services';
9
- import { Subscription, throwError } from 'rxjs';
10
-
11
- @Component({
12
- selector: 'app-file-downloader',
13
- templateUrl: './file-downloader.component.html',
14
- styleUrls: ['./file-downloader.component.scss'],
15
- encapsulation: ViewEncapsulation.None,
16
- })
17
- export class FileDownloaderComponent extends HTTPManagerService<any> implements OnInit {
18
-
19
- @Input() delayError = 3
20
- @Input() apiRequest: ApiRequest = ApiRequest.adapt()
21
- @Input() displayErrorMessage = false
22
-
23
- @Input() saveFileAs?: string
24
-
25
- _labels = DownloadLabels.adapt()
26
- @Input() set labels(value: DownloadLabels) {
27
- this._labels = (value) ? DownloadLabels.adapt(value) : DownloadLabels.adapt()
28
- }
29
-
30
- active = false
31
-
32
- subscription = new Subscription()
33
-
34
- get labels() {
35
- return this._labels
36
- }
37
-
38
- @Output() completed = new EventEmitter<void>()
39
- @Output() failed = new EventEmitter<string>()
40
-
41
- @Input() disabled = false
42
-
43
- constructor() {
44
- super()
45
- }
46
-
47
- ngOnInit() {
48
-
49
- }
50
-
51
- onDownloadStreaming() {
52
-
53
- if (this.active) return;
54
- this.active = true;
55
-
56
- return this.downloadRequest(this.apiRequest, [])
57
- .pipe(
58
- distinctUntilChanged(),
59
- catchError((err) => {
60
-
61
- this.onError(err.message)
62
- this.active = false
63
- this.failed.emit(err)
64
-
65
- return throwError(() => err)
66
-
67
- }),
68
- finalize(() => {
69
- if (!this.active) return
70
- this.active = false
71
- this.completed.emit()
72
- })
73
- )
74
- .subscribe()
75
- }
76
-
77
-
78
- onError(message: string) {
79
-
80
- if(!message || !this.displayErrorMessage) return
81
-
82
- const display = ToastDisplay.adapt({
83
- message,
84
- action: 'Ok',
85
- color: ToastColors.ERROR,
86
- icon: 'error',
87
- });
88
-
89
- this.active = false
90
-
91
- this.toastMessage.toastMessage(display);
92
-
93
- }
94
-
95
- OnDestroy() {
96
- this.subscription.unsubscribe()
97
- }
98
-
99
- }
@@ -1,22 +0,0 @@
1
- export interface DownloadLabelsInterface {
2
- error: string;
3
- action: string;
4
- icon: string;
5
- }
6
-
7
- export class DownloadLabels implements DownloadLabelsInterface {
8
- constructor(
9
- public error = '',
10
- public action = '',
11
- public icon = 'error',
12
- ) {}
13
-
14
- static adapt(item?: any): DownloadLabelsInterface {
15
- return new DownloadLabels(
16
- item?.error,
17
- item?.action,
18
- item?.icon,
19
- )
20
-
21
- }
22
- }
@@ -1,8 +0,0 @@
1
- <div class="spinner-background">{{display}}</div>
2
- <mat-progress-spinner
3
- [color]="color"
4
- [diameter]="diameter"
5
- [mode]="mode || 'indeterminate'"
6
- [strokeWidth]="strokeWidth"
7
- [value]="value">
8
- </mat-progress-spinner>
@@ -1,19 +0,0 @@
1
- .example-h2 {
2
- margin: 24px 0;
3
- }
4
- :not(spinner-container).spinner-container {
5
- position: relative;
6
-
7
- .spinner-background {
8
- position: absolute;
9
- width: 80px;
10
- height: 80px;
11
- line-height: 80px;
12
- text-align: center;
13
- overflow: hidden;
14
- border-color: rgba(103, 58, 183, 0.12);
15
- border-radius: 50%;
16
- border-style: solid;
17
- border-width: 10px;
18
- }
19
- }
@@ -1,25 +0,0 @@
1
- import { Component, Input, OnInit } from '@angular/core';
2
- import { ThemePalette } from '@angular/material/core';
3
- import { ProgressSpinnerMode } from '@angular/material/progress-spinner';
4
-
5
- @Component({
6
- selector: 'app-spinner',
7
- templateUrl: './spinner.component.html',
8
- styleUrls: ['./spinner.component.scss']
9
- })
10
- export class SpinnerComponent implements OnInit {
11
-
12
- @Input() color: ThemePalette;
13
-
14
- @Input() diameter?: number;
15
- @Input() display?: string | number;
16
- @Input() mode?: ProgressSpinnerMode;
17
- @Input() strokeWidth?: number;
18
- @Input() value = 0
19
-
20
- constructor() { }
21
-
22
- ngOnInit() {
23
- }
24
-
25
- }
@@ -1,30 +0,0 @@
1
- import { App } from "./app.model"
2
-
3
- export interface AppSessionInterface {
4
- cfid: string,
5
- sessionid: string,
6
- urltoken: string,
7
- cftoken: string,
8
- }
9
-
10
- export class AppSession implements AppSessionInterface {
11
-
12
- constructor(
13
- public cfid = '',
14
- public sessionid = '',
15
- public urltoken = '',
16
- public cftoken = '',
17
- ) {}
18
-
19
- static adapt(item?: any): AppSession {
20
-
21
- return new AppSession(
22
- item?.cfid,
23
- item?.sessionid,
24
- item?.urltoken,
25
- item?.cftoken,
26
- )
27
-
28
- }
29
-
30
- }
@@ -1,19 +0,0 @@
1
- export interface AppInterface {
2
- applicationName: string
3
- }
4
-
5
- export class App implements AppInterface {
6
-
7
- constructor(
8
- public applicationName = ''
9
- ) {}
10
-
11
- static adapt(item?: any): App {
12
-
13
- return new App(
14
- item?.applicationName,
15
- )
16
-
17
- }
18
-
19
- }