http-request-manager 18.15.34 → 18.16.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 (300) hide show
  1. package/fesm2022/http-request-manager.mjs +13688 -0
  2. package/fesm2022/http-request-manager.mjs.map +1 -0
  3. package/http-request-manager-18.16.0.tgz +0 -0
  4. package/package.json +15 -6
  5. package/types/http-request-manager.d.ts +3968 -0
  6. package/TEST_COVERAGE_SUMMARY.md +0 -458
  7. package/ng-package.json +0 -8
  8. package/src/docs/ADVANCED_WEBSOCKET.md +0 -633
  9. package/src/docs/ARCHITECTURE.md +0 -633
  10. package/src/docs/BATCH_REQUEST_README.md +0 -467
  11. package/src/docs/COMPLETE_API_REFERENCE.md +0 -1037
  12. package/src/docs/DATABASE_README.md +0 -1195
  13. package/src/docs/ENCRYPTION_README.md +0 -403
  14. package/src/docs/HTTP_MANAGER_README.md +0 -628
  15. package/src/docs/HTTP_SINGNALS_MANAGER_README.md +0 -654
  16. package/src/docs/HTTP_STATE_MANAGER_README.md +0 -1391
  17. package/src/docs/INTERCEPTOR_README.md +0 -549
  18. package/src/docs/LOCAL_STORAGE_README.md +0 -1056
  19. package/src/docs/LOCAL_STORAGE_SIGNALS_README.md +0 -338
  20. package/src/docs/LOGGER_README.md +0 -310
  21. package/src/docs/MESSAGE_TRACKER_README.md +0 -518
  22. package/src/docs/MESSAGE_TRACKER_SIGNALS_README.md +0 -563
  23. package/src/docs/MODELS_README.md +0 -1264
  24. package/src/docs/SIGNAL_SERVICES_README.md +0 -238
  25. package/src/docs/SQL_DIXIE_README.md +0 -574
  26. package/src/docs/STORE_STATE_MANAGER_README.md +0 -556
  27. package/src/docs/STORE_STATE_SIGNALS_README.md +0 -600
  28. package/src/docs/UPLOAD_REQUEST_README.md +0 -324
  29. package/src/docs/UTILS_README.md +0 -1604
  30. package/src/docs/WEBSOCKET_MESSAGE_SERVICE.md +0 -799
  31. package/src/docs/WEBSOCKET_SIGNALS_README.md +0 -641
  32. package/src/docs/WEBSOCKET_SINGLETON_REFACTORING.md +0 -201
  33. package/src/docs/WS_MANAGER_README.md +0 -613
  34. package/src/lib/http-request-manager.module.ts +0 -147
  35. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.html +0 -116
  36. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.scss +0 -0
  37. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.ts +0 -255
  38. package/src/lib/http-request-services-demo/http-request-services-demo.component.html +0 -123
  39. package/src/lib/http-request-services-demo/http-request-services-demo.component.scss +0 -6
  40. package/src/lib/http-request-services-demo/http-request-services-demo.component.ts +0 -53
  41. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.html +0 -195
  42. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.scss +0 -17
  43. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.ts +0 -208
  44. package/src/lib/http-request-services-demo/local-storage-signals-demo/local-storage-signals-demo.component.html +0 -200
  45. package/src/lib/http-request-services-demo/local-storage-signals-demo/local-storage-signals-demo.component.scss +0 -17
  46. package/src/lib/http-request-services-demo/local-storage-signals-demo/local-storage-signals-demo.component.ts +0 -214
  47. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/download-file/download-file.component.html +0 -53
  48. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/download-file/download-file.component.scss +0 -60
  49. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/download-file/download-file.component.ts +0 -72
  50. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/file-download.module.ts +0 -28
  51. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/file-downloader.component.html +0 -10
  52. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/file-downloader.component.scss +0 -29
  53. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/file-downloader.component.ts +0 -100
  54. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/models/download-labels-model.ts +0 -22
  55. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/spinner/spinner.component.html +0 -8
  56. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/spinner/spinner.component.scss +0 -19
  57. package/src/lib/http-request-services-demo/request-manager-basic-demo/file-downloader/spinner/spinner.component.ts +0 -26
  58. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/app-session.model.ts +0 -30
  59. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/app.model.ts +0 -19
  60. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/get-sample.model.ts +0 -25
  61. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/sample-ai-prompt.ts +0 -19
  62. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/sample-client-details.ts +0 -24
  63. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/sample-client-info.ts +0 -30
  64. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/sample-client.model.ts +0 -49
  65. package/src/lib/http-request-services-demo/request-manager-basic-demo/models/sample-mapper-client-info.ts +0 -33
  66. package/src/lib/http-request-services-demo/request-manager-basic-demo/request-manager-basic-demo.component.html +0 -279
  67. package/src/lib/http-request-services-demo/request-manager-basic-demo/request-manager-basic-demo.component.scss +0 -24
  68. package/src/lib/http-request-services-demo/request-manager-basic-demo/request-manager-basic-demo.component.ts +0 -461
  69. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.html +0 -53
  70. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.scss +0 -60
  71. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.ts +0 -72
  72. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-download.module.ts +0 -28
  73. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.html +0 -10
  74. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.scss +0 -29
  75. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.ts +0 -100
  76. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/models/download-labels-model.ts +0 -22
  77. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.html +0 -8
  78. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.scss +0 -19
  79. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.ts +0 -26
  80. package/src/lib/http-request-services-demo/request-manager-demo/models/app-session.model.ts +0 -30
  81. package/src/lib/http-request-services-demo/request-manager-demo/models/app.model.ts +0 -19
  82. package/src/lib/http-request-services-demo/request-manager-demo/models/get-sample.model.ts +0 -25
  83. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-ai-prompt.ts +0 -19
  84. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client-details.ts +0 -24
  85. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client-info.ts +0 -30
  86. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client.model.ts +0 -49
  87. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-mapper-client-info.ts +0 -33
  88. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.html +0 -622
  89. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.scss +0 -106
  90. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.ts +0 -687
  91. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.html +0 -418
  92. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.scss +0 -24
  93. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.ts +0 -576
  94. package/src/lib/http-request-services-demo/request-manager-state-demo/services/state-manager-demo.service.ts +0 -89
  95. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/services/state-data-request.service.ts +0 -119
  96. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-ai-messaging/ws-ai-messaging.component.css +0 -0
  97. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-ai-messaging/ws-ai-messaging.component.html +0 -3
  98. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-ai-messaging/ws-ai-messaging.component.ts +0 -16
  99. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-chats/ws-chats.component.css +0 -0
  100. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-chats/ws-chats.component.html +0 -3
  101. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-chats/ws-chats.component.ts +0 -16
  102. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.css +0 -31
  103. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.html +0 -94
  104. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.scss +0 -41
  105. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.spec.ts +0 -203
  106. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.ts +0 -144
  107. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.css +0 -11
  108. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.html +0 -102
  109. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.spec.ts +0 -40
  110. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.ts +0 -230
  111. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.css +0 -30
  112. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.html +0 -172
  113. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.spec.ts +0 -31
  114. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.ts +0 -239
  115. package/src/lib/http-request-services-demo/request-manager-ws-demo/models/oidc-client.model.ts +0 -31
  116. package/src/lib/http-request-services-demo/request-manager-ws-demo/models/user-data.model.ts +0 -32
  117. package/src/lib/http-request-services-demo/request-manager-ws-demo/request-manager-ws-demo.component.css +0 -0
  118. package/src/lib/http-request-services-demo/request-manager-ws-demo/request-manager-ws-demo.component.html +0 -84
  119. package/src/lib/http-request-services-demo/request-manager-ws-demo/request-manager-ws-demo.component.ts +0 -40
  120. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/index.ts +0 -3
  121. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/jwt-token.service.ts +0 -62
  122. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/message-service-demo.service.ts +0 -83
  123. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/notification-service-demo.service.ts +0 -147
  124. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/state-service-demo.service.ts +0 -168
  125. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/download-file/download-file.component.html +0 -53
  126. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/download-file/download-file.component.scss +0 -60
  127. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/download-file/download-file.component.ts +0 -72
  128. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-download.module.ts +0 -28
  129. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-downloader.component.html +0 -10
  130. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-downloader.component.scss +0 -29
  131. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-downloader.component.ts +0 -100
  132. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/models/download-labels-model.ts +0 -22
  133. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/spinner/spinner.component.html +0 -8
  134. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/spinner/spinner.component.scss +0 -19
  135. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/spinner/spinner.component.ts +0 -26
  136. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/app-session.model.ts +0 -30
  137. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/app.model.ts +0 -19
  138. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/get-sample.model.ts +0 -25
  139. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-ai-prompt.ts +0 -19
  140. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-client-details.ts +0 -24
  141. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-client-info.ts +0 -30
  142. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-client.model.ts +0 -49
  143. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-mapper-client-info.ts +0 -33
  144. package/src/lib/http-request-services-demo/request-signals-manager-demo/request-signals-manager-demo.component.html +0 -380
  145. package/src/lib/http-request-services-demo/request-signals-manager-demo/request-signals-manager-demo.component.scss +0 -24
  146. package/src/lib/http-request-services-demo/request-signals-manager-demo/request-signals-manager-demo.component.ts +0 -410
  147. package/src/lib/http-request-services-demo/store-state-manager-demo/models/settings.model.ts +0 -28
  148. package/src/lib/http-request-services-demo/store-state-manager-demo/services/settings-state.service.ts +0 -49
  149. package/src/lib/http-request-services-demo/store-state-manager-demo/store-state-manager-demo.component.css +0 -0
  150. package/src/lib/http-request-services-demo/store-state-manager-demo/store-state-manager-demo.component.html +0 -23
  151. package/src/lib/http-request-services-demo/store-state-manager-demo/store-state-manager-demo.component.ts +0 -36
  152. package/src/lib/http-request-services-demo/store-state-signals-demo/store-state-signals-demo.component.ts +0 -161
  153. package/src/lib/http-request-services-demo/upload-demo/models/index.ts +0 -1
  154. package/src/lib/http-request-services-demo/upload-demo/models/upload-state.model.ts +0 -30
  155. package/src/lib/http-request-services-demo/upload-demo/upload-demo.component.html +0 -89
  156. package/src/lib/http-request-services-demo/upload-demo/upload-demo.component.scss +0 -160
  157. package/src/lib/http-request-services-demo/upload-demo/upload-demo.component.spec.ts +0 -101
  158. package/src/lib/http-request-services-demo/upload-demo/upload-demo.component.ts +0 -136
  159. package/src/lib/index.ts +0 -3
  160. package/src/lib/interceptors/credentials.interceptor.ts +0 -16
  161. package/src/lib/interceptors/index.ts +0 -6
  162. package/src/lib/interceptors/models/error-settings.model.ts +0 -22
  163. package/src/lib/interceptors/models/index.ts +0 -2
  164. package/src/lib/interceptors/proxy-debugger.interceptor.ts +0 -46
  165. package/src/lib/interceptors/request-error.interceptor.ts +0 -65
  166. package/src/lib/interceptors/request-header.interceptor.ts +0 -56
  167. package/src/lib/message-display/README.md +0 -509
  168. package/src/lib/message-display/index.ts +0 -4
  169. package/src/lib/message-display/models/action.model.ts +0 -27
  170. package/src/lib/message-display/models/communication-message.model.ts +0 -77
  171. package/src/lib/message-display/models/display-config.model.ts +0 -35
  172. package/src/lib/message-display/models/display-rule.interface.ts +0 -28
  173. package/src/lib/message-display/models/display-strategy.interface.ts +0 -8
  174. package/src/lib/message-display/models/index.ts +0 -6
  175. package/src/lib/message-display/models/slide.model.ts +0 -24
  176. package/src/lib/message-display/rules/default-display-rules.ts +0 -35
  177. package/src/lib/message-display/services/message-display-router.service.ts +0 -63
  178. package/src/lib/message-display/strategies/snackbar.strategy.ts +0 -46
  179. package/src/lib/models/batch-options.model.ts +0 -33
  180. package/src/lib/models/batch-progress.model.ts +0 -19
  181. package/src/lib/models/batch-request-state.model.ts +0 -40
  182. package/src/lib/models/batch-result.model.ts +0 -30
  183. package/src/lib/models/config-http-options.model.ts +0 -45
  184. package/src/lib/models/config-local-storage-options.model.ts +0 -27
  185. package/src/lib/models/config-options.model.ts +0 -27
  186. package/src/lib/models/config-token.model.ts +0 -9
  187. package/src/lib/models/data-type.enum.ts +0 -5
  188. package/src/lib/models/database-storage.model.ts +0 -24
  189. package/src/lib/models/index.ts +0 -16
  190. package/src/lib/models/retry-options.model.ts +0 -22
  191. package/src/lib/models/upload-validation-error.model.ts +0 -46
  192. package/src/lib/services/SQL-DixieJS service/dexie-query-executor.ts +0 -246
  193. package/src/lib/services/SQL-DixieJS service/dexie-sql.service.ts +0 -31
  194. package/src/lib/services/SQL-DixieJS service/index.ts +0 -4
  195. package/src/lib/services/SQL-DixieJS service/models/execution-plan.model.ts +0 -52
  196. package/src/lib/services/SQL-DixieJS service/models/index.ts +0 -3
  197. package/src/lib/services/SQL-DixieJS service/models/sql-errors.model.ts +0 -13
  198. package/src/lib/services/SQL-DixieJS service/models/sql-options.model.ts +0 -3
  199. package/src/lib/services/SQL-DixieJS service/query-planner.ts +0 -284
  200. package/src/lib/services/SQL-DixieJS service/schema-validator.ts +0 -217
  201. package/src/lib/services/SQL-DixieJS service/sql-parser.ts +0 -35
  202. package/src/lib/services/database-manager-service/database.manager.service.ts +0 -384
  203. package/src/lib/services/database-manager-service/db.storage.service.ts +0 -240
  204. package/src/lib/services/database-manager-service/index.ts +0 -4
  205. package/src/lib/services/database-manager-service/models/index.ts +0 -2
  206. package/src/lib/services/database-manager-service/models/table-schema.ts +0 -33
  207. package/src/lib/services/index.ts +0 -20
  208. package/src/lib/services/local-storage-manager-service/index.ts +0 -4
  209. package/src/lib/services/local-storage-manager-service/local-storage-manager.service.spec.ts +0 -71
  210. package/src/lib/services/local-storage-manager-service/local-storage-manager.service.ts +0 -567
  211. package/src/lib/services/local-storage-manager-service/local-storage-signals-manager.service.spec.ts +0 -67
  212. package/src/lib/services/local-storage-manager-service/local-storage-signals-manager.service.ts +0 -437
  213. package/src/lib/services/local-storage-manager-service/models/global-store-options.model.ts +0 -30
  214. package/src/lib/services/local-storage-manager-service/models/index.ts +0 -6
  215. package/src/lib/services/local-storage-manager-service/models/setting-options.model.ts +0 -35
  216. package/src/lib/services/local-storage-manager-service/models/storage-data.model.ts +0 -24
  217. package/src/lib/services/local-storage-manager-service/models/storage-option.model.ts +0 -32
  218. package/src/lib/services/local-storage-manager-service/models/storage-type.enum.ts +0 -5
  219. package/src/lib/services/request-manager-services/README.md +0 -282
  220. package/src/lib/services/request-manager-services/http-manager-signals.service.ts +0 -674
  221. package/src/lib/services/request-manager-services/http-manager.service.spec.ts +0 -353
  222. package/src/lib/services/request-manager-services/http-manager.service.ts +0 -727
  223. package/src/lib/services/request-manager-services/index.ts +0 -8
  224. package/src/lib/services/request-manager-services/request-signals.service.ts +0 -372
  225. package/src/lib/services/request-manager-services/request.service.ts +0 -435
  226. package/src/lib/services/request-manager-services/rxjs-operators/countdown.ts +0 -17
  227. package/src/lib/services/request-manager-services/rxjs-operators/delay-retry.ts +0 -16
  228. package/src/lib/services/request-manager-services/rxjs-operators/index.ts +0 -4
  229. package/src/lib/services/request-manager-services/rxjs-operators/request-polling.ts +0 -35
  230. package/src/lib/services/request-manager-services/rxjs-operators/request-streaming.ts +0 -468
  231. package/src/lib/services/request-manager-state-service/http-manager-state.store.spec.ts +0 -665
  232. package/src/lib/services/request-manager-state-service/http-manager-state.store.ts +0 -2395
  233. package/src/lib/services/request-manager-state-service/index.ts +0 -3
  234. package/src/lib/services/request-manager-state-service/models/api-request.model.ts +0 -86
  235. package/src/lib/services/request-manager-state-service/models/index.ts +0 -14
  236. package/src/lib/services/request-manager-state-service/models/operation-result.model.ts +0 -18
  237. package/src/lib/services/request-manager-state-service/models/parsing-result.model.ts +0 -21
  238. package/src/lib/services/request-manager-state-service/models/request-options.model.ts +0 -37
  239. package/src/lib/services/request-manager-state-service/models/stream-config.model.ts +0 -20
  240. package/src/lib/services/request-manager-state-service/models/stream-event-metadata.model.ts +0 -23
  241. package/src/lib/services/request-manager-state-service/models/stream-event.model.ts +0 -23
  242. package/src/lib/services/request-manager-state-service/models/stream-output.model.ts +0 -23
  243. package/src/lib/services/request-manager-state-service/models/stream-progress.model.ts +0 -24
  244. package/src/lib/services/request-manager-state-service/models/stream-type.enum.ts +0 -13
  245. package/src/lib/services/request-manager-state-service/models/ws-options.model.ts +0 -42
  246. package/src/lib/services/store-state-manager-service/index.ts +0 -4
  247. package/src/lib/services/store-state-manager-service/models/index.ts +0 -3
  248. package/src/lib/services/store-state-manager-service/models/state-operation-result.model.ts +0 -30
  249. package/src/lib/services/store-state-manager-service/models/state-storage-options.model.ts +0 -24
  250. package/src/lib/services/store-state-manager-service/store-state-manager-signals.service.ts +0 -169
  251. package/src/lib/services/store-state-manager-service/store-state-manager.service.ts +0 -153
  252. package/src/lib/services/utils/app.service.spec.ts +0 -25
  253. package/src/lib/services/utils/app.service.ts +0 -21
  254. package/src/lib/services/utils/encryption/README.md +0 -79
  255. package/src/lib/services/utils/encryption/asymmetrical-encryption.service.ts +0 -282
  256. package/src/lib/services/utils/encryption/encryption-test.service.ts +0 -39
  257. package/src/lib/services/utils/encryption/index.ts +0 -5
  258. package/src/lib/services/utils/encryption/random.ts +0 -81
  259. package/src/lib/services/utils/encryption/symmetrical-encryption.service.ts +0 -106
  260. package/src/lib/services/utils/headers.service.spec.ts +0 -80
  261. package/src/lib/services/utils/headers.service.ts +0 -18
  262. package/src/lib/services/utils/index.ts +0 -9
  263. package/src/lib/services/utils/logger.service.ts +0 -90
  264. package/src/lib/services/utils/models/index.ts +0 -4
  265. package/src/lib/services/utils/models/normalized-request-options.model.ts +0 -24
  266. package/src/lib/services/utils/models/path-tracker-state.model.ts +0 -20
  267. package/src/lib/services/utils/models/query-params-tracker-options.model.ts +0 -24
  268. package/src/lib/services/utils/models/query-tracker-state.model.ts +0 -23
  269. package/src/lib/services/utils/object-merger.service.spec.ts +0 -18
  270. package/src/lib/services/utils/object-merger.service.ts +0 -78
  271. package/src/lib/services/utils/path-query.service.spec.ts +0 -117
  272. package/src/lib/services/utils/path-query.service.ts +0 -69
  273. package/src/lib/services/utils/query-params-tracker.service.ts +0 -442
  274. package/src/lib/services/utils/random-color.utils.ts +0 -83
  275. package/src/lib/services/utils/utils.service.spec.ts +0 -165
  276. package/src/lib/services/utils/utils.service.ts +0 -192
  277. package/src/lib/services/ws-manager-service/index.ts +0 -13
  278. package/src/lib/services/ws-manager-service/message-tracker-signals.service.ts +0 -147
  279. package/src/lib/services/ws-manager-service/message-tracker.service.ts +0 -477
  280. package/src/lib/services/ws-manager-service/models/channel-info.model.ts +0 -29
  281. package/src/lib/services/ws-manager-service/models/channel-message-data.model.ts +0 -24
  282. package/src/lib/services/ws-manager-service/models/channel-message.model.ts +0 -36
  283. package/src/lib/services/ws-manager-service/models/channel-type.enum.ts +0 -6
  284. package/src/lib/services/ws-manager-service/models/communication-type.enum.ts +0 -5
  285. package/src/lib/services/ws-manager-service/models/index.ts +0 -10
  286. package/src/lib/services/ws-manager-service/models/notification-message.model.ts +0 -29
  287. package/src/lib/services/ws-manager-service/models/public-message.model.ts +0 -18
  288. package/src/lib/services/ws-manager-service/models/state-message.model.ts +0 -18
  289. package/src/lib/services/ws-manager-service/models/ws-user.model.ts +0 -38
  290. package/src/lib/services/ws-manager-service/services/index.ts +0 -4
  291. package/src/lib/services/ws-manager-service/services/websocket-message.service.ts +0 -129
  292. package/src/lib/services/ws-manager-service/services/websocket.service.ts +0 -434
  293. package/src/lib/services/ws-manager-service/websocket-service/index.ts +0 -1
  294. package/src/lib/services/ws-manager-service/websocket-service/websocket-manager.service.ts +0 -716
  295. package/src/lib/services/ws-manager-service/websocket-services-complete.spec.ts +0 -596
  296. package/src/lib/services/ws-manager-service/websocket-signals-manager.service.ts +0 -141
  297. package/src/public-api.ts +0 -19
  298. package/tsconfig.lib.json +0 -34
  299. package/tsconfig.lib.prod.json +0 -10
  300. package/tsconfig.spec.json +0 -14
@@ -1,461 +0,0 @@
1
- import { Component, Input, OnInit, ViewChild, inject } from '@angular/core'
2
-
3
- import { BehaviorSubject, EMPTY, Observable, throwError } from 'rxjs'
4
- import { FormArray, FormBuilder, Validators } from '@angular/forms'
5
-
6
- import { ClientInfo } from './models/sample-client-info'
7
- import { ClientInfoMapper } from './models/sample-mapper-client-info'
8
- import { AIPrompt } from './models/sample-ai-prompt'
9
- import { ApiRequest, HTTPManagerService, StreamType } from '../..'
10
- import { catchError, map, tap } from 'rxjs/operators'
11
-
12
- import { ToastColors, ToastDisplay, ToastMessageDisplayService } from 'toast-message-display'
13
-
14
- @Component({
15
- selector: 'app-request-manager-basic-demo',
16
- templateUrl: './request-manager-basic-demo.component.html',
17
- styleUrls: ['./request-manager-basic-demo.component.scss'],
18
- providers: [HTTPManagerService],
19
- standalone: false
20
- })
21
- export class RequestManagerBasicDemoComponent implements OnInit {
22
-
23
- server = 'http://localhost:8080'
24
- adapter?: Function
25
- mapper?: Function
26
-
27
- displayedColumns: string[] = []
28
-
29
- // Dynamic columns based on data structure
30
- getColumnsFromData(data: any[]): string[] {
31
- if (!data || data.length === 0) {
32
- return []
33
- }
34
-
35
- const firstRecord = data[0]
36
- if (!firstRecord || typeof firstRecord !== 'object') {
37
- return []
38
- }
39
-
40
- // Extract all keys from the first record, excluding null/undefined
41
- return Object.keys(firstRecord).filter(key =>
42
- firstRecord[key] !== null && firstRecord[key] !== undefined
43
- )
44
- }
45
-
46
- // Update displayed columns when data changes
47
- updateDisplayedColumns(data: any[]): void {
48
- this.displayedColumns = this.getColumnsFromData(data)
49
- console.log('[DEMO] Updated columns:', this.displayedColumns)
50
- }
51
-
52
- // Helper to check if value is an object
53
- isObject(value: any): boolean {
54
- return value !== null && typeof value === 'object' && !Array.isArray(value)
55
- }
56
-
57
- private fb = inject(FormBuilder)
58
- private toastMessage = inject(ToastMessageDisplayService)
59
-
60
- questionControl = this.fb.control("", [Validators.required])
61
-
62
- httpManagerService = inject(HTTPManagerService)
63
-
64
- isPending$ = this.httpManagerService.isPending$
65
- countdown$ = this.httpManagerService.countdown$
66
-
67
- GET_error$ = new BehaviorSubject<string>('')
68
- POST_error$ = new BehaviorSubject<string>('')
69
- PUT_error$ = new BehaviorSubject<string>('')
70
- DELETE_error$ = new BehaviorSubject<string>('')
71
-
72
- STREAM_error$ = new BehaviorSubject<string>('')
73
- STREAM_AI_error$ = new BehaviorSubject<string>('')
74
-
75
- GET$?: Observable<any>
76
- POST$?: Observable<any>
77
- PUT$?: Observable<any>
78
- DELETE$?: Observable<any>
79
-
80
- STREAM$?: Observable<any>
81
- STREAM_AI$?: Observable<any>
82
-
83
- requestParams = {
84
- GET: ApiRequest.adapt(),
85
- POST: ApiRequest.adapt(),
86
- PUT: ApiRequest.adapt(),
87
- DELETE: ApiRequest.adapt(),
88
- STREAM: ApiRequest.adapt(),
89
- }
90
-
91
- streamTypes = [
92
- { id: 'JSON', value: 'json' },
93
- { id: 'NDJSON', value: 'ndjson' },
94
- { id: 'AI Streaming', value: 'ai_streaming' },
95
- { id: 'Event Stream', value: 'event_stream' },
96
- { id: 'Auto', value: 'auto' },
97
- ]
98
-
99
- streamType = 'Auto'
100
-
101
- @ViewChild("failedState", { static: true }) failedState: any
102
- @ViewChild("pollingState", { static: true }) pollingState: any
103
-
104
- downloadRequest = ApiRequest.adapt({
105
- server: 'assets/images',
106
- path: ['lego.png'],
107
- saveAs: 'john.jpg', // Optional
108
- headers: { 'Authorization': 'Bearer Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6InJ0c0ZULWItN0x1WTdEVlllU05LY0lKN1ZuYyJ9.eyJhdWQiOiI4ODhhMzFjZS01OWQzLTRhMTItYTU5Ni04ZDYyZjY0MWI1MDUiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vNmY0MTE5ODItY2YyMy00ZTQ1LTk0NDktNGI2MDdiN2E4OGVjL3YyLjAiLCJpYXQiOjE3NjU4MzQxNDksIm5iZiI6MTc2NTgzNDE0OSwiZXhwIjoxNzY1ODM5NzQ2LCJhY2N0IjowLCJhaW8iOiJBV1FBbS84YUFBQUFVUEZOYUhSZkZ4ZVkwRWthcFBzdWZaNG1QYXV6YVRoODRRZUtQRzkrbEFIVE5XanVwQy9ZSjEwK2IrMktWVlJSSXZRNFpwS2xyWTFGd0xRZmtXOTNLbkRNckxSeEMzWTVOOGlQREZ4b1liZExucW1QL1N1ZE1pRW1Va05tTklSWSIsImF6cCI6Ijg4OGEzMWNlLTU5ZDMtNGExMi1hNTk2LThkNjJmNjQxYjUwNSIsImF6cGFjciI6IjAiLCJncm91cHMiOlsiZWE2ZDk5YjAtNDgyNC00MDU0LTk0MTQtZDNhOTZkZDA3MjRiIl0sIm5hbWUiOiJHVExDIEFwcCBTdXBlciBBZG1pbiIsIm9pZCI6IjI2NzUxY2I2LWNlMDEtNDMzMC05OTc0LWZjMzgxMjQ3YTEzYyIsInByZWZlcnJlZF91c2VybmFtZSI6Imd0bGMwMDNAZ3RsYy5jYSIsInJoIjoiMS5BUzRBZ2hsQmJ5UFBSVTZVU1V0Z2UzcUk3TTR4aW9qVFdSSktwWmFOWXZaQnRRVm1BYTR1QUEuIiwicm9sZXMiOlsiZ3RsYy5hY2wuc3VwZXJhZG1pbiJdLCJzY3AiOiJHVExDX0FwcGxpY2F0aW9uIiwic2lkIjoiMDAzZjVhZDktZmJmNi1jZTkyLTg3MjItMWEzNDExYjMzMDJiIiwic3ViIjoiS0RYQ3drVlhUbTRUUmcwaTkxbXZDZzgtQ29uLXpWbk5FQ2Y5LVg0dkpzUSIsInRpZCI6IjZmNDExOTgyLWNmMjMtNGU0NS05NDQ5LTRiNjA3YjdhODhlYyIsInVwbiI6Imd0bGMwMDNAZ3RsYy5jYSIsInV0aSI6InpBaTJoMmpVUUVHbVY0RTJXMWxqQUEiLCJ2ZXIiOiIyLjAiLCJ3aWRzIjpbImI3OWZiZjRkLTNlZjktNDY4OS04MTQzLTc2YjE5NGU4NTUwOSJdLCJ4bXNfZnRkIjoiUDJraW1ZM0tqc1BTRndxNHlZdmJ0bGhrSUk3d2tXNmFpcW1FQ1BaNEdja0JkWE5sWVhOMExXUnpiWE0ifQ.LzppoggMm27smSAy9SamtPN95vCzdELCAfhtOj5n_T_H6g9xCmNRLS9FaUFQMau6Qvl0lROKl7WDklTswLFkfxbIxCBWtXdL-LTqT5cDURSJAll8vC3zlN3Hg9pAFBUVZFRolt6Z7LvPdI3pvUOQs0yFwVzp9k6cLF8aemKdwKQrMX3XXua1MfBWZcqQ4WiBVNmKh8w6yQB35I4u5WqdFnu33nUGb-kvc18SOpoUfiJnlV-PudaEzFXdU3CjAaMEcuPFv5xLwWJKuhU73dNH4EyQDFMVGtcIHNnieOfiY_nK2_0-5DM6aI40UIRK6Bt-HmMQpnbhLps5y3ep6Z7RNw' } // Optional
109
- })
110
-
111
- // downloadRequest = ApiRequest.adapt({
112
- // server: 'oidc/ai/file'
113
- // })
114
-
115
- sampleClientData = {
116
- id: 0,
117
- name: "Old School Dates",
118
- domain: "osd.com",
119
- service: "osd",
120
- spiffe: "osd.com/osd",
121
- secret: "SMOPECXP-OS4P-USOG-X2II-3XMD1FQDR3IJX",
122
- created: 1693003138,
123
- modified: 1693003138,
124
- icon: "",
125
- imageFile: "",
126
- email: "wavecoders@gmail.com"
127
- }
128
-
129
- requestForm = this.fb.group({
130
- path: this.fb.control<string>("ai/"),
131
- headers: this.fb.array([]),
132
- adapter: [null],
133
- mapper: [null],
134
- retry: this.fb.group({
135
- times: [3],
136
- delay: [3],
137
- }),
138
- polling: [3],
139
- })
140
-
141
- AIType = 0
142
-
143
- sampleAdaptors = [
144
- { label: "ClientInfo Basic", value: ClientInfo.adapt },
145
- { label: "AI Prompt", value: AIPrompt.adapt },
146
- ]
147
-
148
- sampleMappers = [
149
- { label: "Mapper Basic", value: ClientInfoMapper.adapt },
150
- { label: "AI Prompt", value: AIPrompt.adapt },
151
- ]
152
-
153
- get retry() {
154
- return this.requestForm.get('retry')?.value
155
- }
156
-
157
- get headers(): FormArray {
158
- return this.requestForm.get('headers') as FormArray
159
- }
160
-
161
- get isValid() {
162
- this.requestForm.markAllAsTouched()
163
- return this.requestForm.valid
164
- }
165
-
166
- hasId = (arr: any[]) => {
167
- if (arr.length === 0) return false
168
- return !isNaN(arr[arr.length - 1])
169
- }
170
-
171
- props = (adapter: any) => {
172
- return (adapter) ? adapter() : null
173
- }
174
-
175
- // server = `http://sample-endpoint/as/authorization.oauth2`
176
-
177
- arrayObjectsToObjects = (arr: any[]) => {
178
- return Array.isArray(arr) ? arr.reduce((obj, item) => Object.assign(obj, { [item.key]: item.value }), {}) : {}
179
- }
180
-
181
- constructor() { }
182
-
183
- ngOnInit() {
184
-
185
- // const reqGet2 = ApiRequest.adapt({
186
- // server,
187
- // path: ['clients'],
188
- // headers: { authentication: "Bearer <KEY>" },
189
- // adapter: ClientInfo,
190
- // dataType: DataType.OBJECT,
191
- // // concurrent: false,
192
- // // polling: 3, //seconds
193
- // })
194
-
195
- // const req2 = [1024,1025,1026].map(item => {
196
- // return this.httpManagerService.getRequest<ClientInfo[]>(reqGet2, [item])
197
- // .pipe(
198
- // catchError(error => {
199
- // return throwError(() => new Error(error.error.message))
200
- // })
201
- // )
202
- // })
203
-
204
- // forkJoin(req2)
205
- // .subscribe(res => console.log(res))
206
-
207
- }
208
-
209
- onStreamType(type: string) {
210
- this.streamType = type
211
- }
212
-
213
- addHeader() {
214
- const header = this.fb.group({
215
- key: ['', Validators.required],
216
- value: ['']
217
- })
218
- this.headers.push(header)
219
- }
220
-
221
- removeHeader(index: number) {
222
- this.headers.removeAt(index)
223
- }
224
-
225
- compileRequest() {
226
-
227
- const requestParams = this.requestForm.value
228
-
229
- requestParams.headers = this.arrayObjectsToObjects(
230
- requestParams.headers || []
231
- )
232
-
233
- const pathReq = (requestParams.path === "") ? [] : (requestParams.path || "").split("/")
234
-
235
- if (!this.pollingState.checked) requestParams.polling = 0
236
-
237
- if (!this.failedState.checked) {
238
- requestParams.retry = { times: 0,delay: 0 }
239
- }
240
-
241
- const apiOptions = ApiRequest.adapt(requestParams)
242
- apiOptions.path = []
243
- apiOptions.server = this.server
244
- apiOptions.adapter = this.adapter
245
- apiOptions.mapper = this.mapper
246
- return { apiOptions: apiOptions, path: pathReq }
247
-
248
- }
249
-
250
- onGetRequest() {
251
-
252
- if(!this.isValid) return
253
-
254
- const reqParams = this.compileRequest()
255
-
256
- this.requestParams.GET = reqParams.apiOptions
257
-
258
- this.GET$ = EMPTY //Cancels Previous
259
- this.GET_error$.next('')
260
-
261
- this.GET$ = this.httpManagerService.getRequest<ClientInfo[]>({...reqParams.apiOptions}, reqParams.path)
262
- .pipe(
263
- // tap((data) => console.log("API GET response", data)),
264
- catchError(error => {
265
- return throwError(() => this.errorHandling(error, 'GET'))
266
- })
267
- )
268
-
269
- }
270
-
271
- onCreateRequest() {
272
-
273
- if(!this.isValid) return
274
-
275
- const reqParams = this.compileRequest()
276
- this.requestParams.POST = reqParams.apiOptions
277
-
278
- this.POST$ = EMPTY //Cancels Previous
279
- this.POST_error$.next('')
280
-
281
- console.log("POST", this.sampleClientData)
282
- console.log("POST", reqParams.apiOptions)
283
- console.log("POST", reqParams.path)
284
-
285
- this.POST$ = this.httpManagerService.postRequest<ClientInfo>(this.sampleClientData, reqParams.apiOptions, reqParams.path)
286
- .pipe(
287
- // tap((data) => console.log("API POST response", data)),
288
- catchError(error => {
289
- return throwError(() => this.errorHandling(error, 'POST'))
290
- })
291
- )
292
-
293
- }
294
-
295
- onUpdateRequest() {
296
-
297
- if(!this.isValid) return
298
-
299
- const reqParams = this.compileRequest()
300
-
301
- if(!this.hasId(reqParams.path)) {
302
- console.log("Missing ID")
303
- return
304
- }
305
-
306
- this.sampleClientData.id = parseInt(reqParams.path[reqParams.path.length-1])
307
- this.requestParams.PUT = reqParams.apiOptions
308
-
309
- this.PUT$ = EMPTY //Cancels Previous
310
- this.PUT_error$.next('')
311
-
312
- this.PUT$ = this.httpManagerService.putRequest<any>(this.sampleClientData, reqParams.apiOptions, reqParams.path)
313
- .pipe(
314
- // tap((data) => console.log("API PUT response", data)),
315
- catchError(error => {
316
- return throwError(() => this.errorHandling(error, 'PUT'))
317
- })
318
- )
319
-
320
- }
321
-
322
- onDeleteRequest() {
323
-
324
- if(!this.isValid) return
325
-
326
- const reqParams = this.compileRequest()
327
- this.requestParams.DELETE = reqParams.apiOptions
328
-
329
- if(!this.hasId(reqParams.path)) {
330
- console.log("Missing ID")
331
- return
332
- }
333
-
334
- this.sampleClientData.id = parseInt(reqParams.path[reqParams.path.length-1])
335
- this.requestParams.DELETE = reqParams.apiOptions
336
-
337
- this.DELETE$ = EMPTY //Cancels Previous
338
- this.DELETE_error$.next('')
339
-
340
- this.DELETE$ = this.httpManagerService.deleteRequest<ClientInfo>(reqParams.apiOptions, reqParams.path)
341
- .pipe(
342
- // tap((data) => console.log("API DELETE response", data)),
343
- catchError(error => {
344
- return throwError(() => this.errorHandling(error, 'DELETE'))
345
- })
346
- )
347
-
348
- }
349
-
350
- onStreamPostRequest() {
351
-
352
- if (!this.isValid) return
353
-
354
- const reqParams = this.compileRequest()
355
-
356
- let payload = {}
357
- let apiPath: string[] = reqParams.path
358
- let apiOptions = reqParams.apiOptions
359
- let responseMapper: (items: any) => any = (items) => items.response
360
-
361
- if (this.AIType === 0) {
362
-
363
- // API request
364
- payload = { prompt: this.questionControl.value }
365
-
366
- } else {
367
-
368
- // Local Ollama request
369
- apiOptions.server = "api"
370
- apiPath = ["generate"]
371
- apiOptions.stream = true
372
- apiOptions.streamType = this.streamType as StreamType
373
- payload = {
374
- model: "phi3:latest",
375
- prompt: this.questionControl.value,
376
- stream: true,
377
- }
378
-
379
- responseMapper = (items) => items.map((word: any) => word.response).flat().join('')
380
-
381
- }
382
-
383
- this.requestParams.STREAM = apiOptions
384
- this.STREAM_AI$ = EMPTY
385
- this.STREAM_AI_error$.next('')
386
-
387
- this.STREAM_AI$ = this.httpManagerService.postRequest<any>(payload, apiOptions, apiPath).pipe(
388
- map(responseMapper),
389
- tap(() => this.questionControl.reset()),
390
- catchError(error => throwError(() => this.errorHandling(error, 'STREAM')))
391
- )
392
-
393
- }
394
-
395
-
396
- onStreamRequest() {
397
-
398
- if(!this.isValid) return
399
-
400
- const reqParams = this.compileRequest()
401
-
402
- reqParams.apiOptions.stream = true
403
- reqParams.apiOptions.streamType = StreamType.NDJSON
404
-
405
- this.requestParams.GET = reqParams.apiOptions
406
- this.STREAM$ = this.httpManagerService.getRequest<ClientInfo[]>(reqParams.apiOptions, reqParams.path)
407
- .pipe(
408
- tap((data) => {
409
- console.log("API STREAM response", data)
410
- if (data && data.length > 0) {
411
- this.updateDisplayedColumns(data)
412
- }
413
- }),
414
- catchError(error => {
415
- return throwError(() => this.errorHandling(error, 'STREAM'))
416
- })
417
- )
418
-
419
- }
420
-
421
- onDownloadCompleted() {
422
-
423
- const message = "Download Completed"
424
-
425
- const display = ToastDisplay.adapt({
426
- message,
427
- action: 'Ok',
428
- color: ToastColors.SUCCESS,
429
- icon: 'sentiment_satisfied_alt',
430
- })
431
-
432
- this.toastMessage.toastMessage(display)
433
- }
434
-
435
- onDownloadFailed(err: string) {
436
-
437
- const message = "Download Failed"
438
-
439
- const display = ToastDisplay.adapt({
440
- message,
441
- action: 'Ok',
442
- color: ToastColors.ERROR,
443
- icon: 'warning',
444
- })
445
-
446
- this.toastMessage.toastMessage(display)
447
- }
448
-
449
- errorHandling(err: any, type: string) {
450
- if(type === 'GET') this.GET_error$.next(err.message)
451
- if(type === 'POST') this.POST_error$.next(err.message)
452
- if(type === 'PUT') this.PUT_error$.next(err.message)
453
- if(type === 'DELETE') this.DELETE_error$.next(err.message)
454
- if(type === 'STREAM') this.STREAM_error$.next(err.message)
455
- }
456
-
457
- onSelectAIType(type: number) {
458
- this.AIType = type
459
- }
460
-
461
- }
@@ -1,53 +0,0 @@
1
- @if (!isPending) {
2
- @if (hasError) {
3
- <div class="width center-txt" style="margin-bottom: 4px;">
4
- <mat-icon color="warn" class="warn-icon">warning</mat-icon>
5
- </div>
6
- } @else {
7
- @if (active) {
8
- <div class="container-obj">
9
- <div class="centered-obj-div">
10
- <mat-progress-spinner
11
- color="primary"
12
- mode="indeterminate"
13
- [diameter]="44"
14
- ></mat-progress-spinner>
15
- </div>
16
- </div>
17
- } @else {
18
- <button data-tracking="export-btn" mat-icon-button (click)="onAction()" class="icon-button" [disabled]="disabled">
19
- <mat-icon class="custom-icon">file_download</mat-icon>
20
- </button>
21
- }
22
- }
23
- } @else {
24
- @if ((progress > 0 && progress < 100)) {
25
- <div
26
- class="spinner-container"
27
- >
28
- <div class="spinner-background">
29
- {{progress}}%
30
- </div>
31
- <mat-progress-spinner
32
- color="primary"
33
- [mode]="mode"
34
- [value]="progress"
35
- [diameter]="44"
36
- ></mat-progress-spinner>
37
- </div>
38
- } @else {
39
- <div class="container-obj">
40
- <div class="centered-obj-div">
41
- <mat-progress-spinner
42
- color="primary"
43
- mode="indeterminate"
44
- [diameter]="44"
45
- ></mat-progress-spinner>
46
- </div>
47
- </div>
48
- }
49
- }
50
-
51
-
52
-
53
-
@@ -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,72 +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
- standalone: false
11
- })
12
- export class DownloadFileComponent implements OnInit {
13
-
14
- private subscriptions = new Subscription();
15
-
16
- @Input() event?: Function;
17
- @Input() displayError = 3; // seconds
18
- @Input() diameter = 32;
19
- @Input() mode: ProgressSpinnerMode = 'determinate';
20
- @Input() isPending = false;
21
-
22
- @Input() active = false;
23
- @Input() disabled = false;
24
-
25
- @Output() error = new EventEmitter<void>();
26
-
27
- private _progress = 0;
28
- @Input() set progress(value: any) {
29
- this._progress = value ?? 0;
30
- }
31
-
32
- get progress() {
33
- return this._progress;
34
- }
35
-
36
- private _hasError = false;
37
- private errorTimerActive = false;
38
-
39
- @Input() set hasError(value: boolean | any) {
40
-
41
- this._hasError = !!value;
42
-
43
- if (this._hasError && !this.errorTimerActive) {
44
- this.errorTimerActive = true;
45
- this.active = false;
46
- this.error.emit()
47
- this.subscriptions.add(
48
- timer(this.displayError * 1000)
49
- .subscribe((err) => {
50
- this._hasError = false;
51
- this.errorTimerActive = false;
52
- })
53
- );
54
- }
55
-
56
- }
57
-
58
- get hasError() {
59
- return this._hasError;
60
- }
61
-
62
- ngOnInit() {}
63
-
64
- onAction() {
65
- this.isPending = false
66
- if (this.event) this.event()
67
- }
68
-
69
- ngOnDestroy() {
70
- this.subscriptions.unsubscribe()
71
- }
72
- }
@@ -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>