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,654 +0,0 @@
1
- # HTTP Manager Signals Service
2
-
3
- The `HTTPManagerSignalsService` provides the same functionality as `HTTPManagerService` but uses Angular Signals for state management, making it ideal for modern Angular applications that leverage fine-grained reactivity.
4
-
5
- ## Overview
6
-
7
- This service provides:
8
-
9
- - **Signal-Based State** - Exposes `data`, `isPending`, `error`, and `countdown` as Angular Signals
10
- - **Feature Parity** - Supports all features of `HTTPManagerService` including polling, retries, adapters, and streaming
11
- - **Optimized for Signals** - Designed to work seamlessly with Angular's Signal-based components and templates
12
- - **Modern Reactivity** - Leverages Angular's latest reactive patterns
13
-
14
- ## Usage
15
-
16
- ### Basic Signal-Based HTTP Request
17
-
18
- ```typescript
19
- import { Component, inject } from '@angular/core';
20
- import { HTTPManagerSignalsService, ApiRequest } from 'http-request-manager';
21
-
22
- @Component({
23
- selector: 'app-users',
24
- template: `
25
- <div *ngIf="isLoading()">Loading...</div>
26
- <div *ngFor="let user of data()">
27
- {{ user.name }}
28
- </div>
29
- `
30
- })
31
- export class UsersComponent {
32
- httpManager = inject(HTTPManagerSignalsService);
33
-
34
- data = this.httpManager.data; // Signal<any[]>
35
- isLoading = this.httpManager.isPending; // Signal<boolean>
36
- error = this.httpManager.error; // Signal<any>
37
- countdown = this.httpManager.countdown; // Signal<number>
38
-
39
- ngOnInit() {
40
- this.httpManager.getRequest(
41
- ApiRequest.adapt({ path: ['users'] })
42
- ).subscribe();
43
- }
44
- }
45
- ```
46
-
47
- ### Modern Component with Signals
48
-
49
- ```typescript
50
- import { Component, inject, signal, computed } from '@angular/core';
51
- import { HTTPManagerSignalsService, ApiRequest } from 'http-request-manager';
52
-
53
- interface User {
54
- id: number;
55
- name: string;
56
- email: string;
57
- }
58
-
59
- @Component({
60
- selector: 'app-user-list',
61
- template: `
62
- <div class="user-list">
63
- <h2>Users ({{ userCount() }})</h2>
64
-
65
- <div *ngIf="loadingState() === 'loading'">
66
- Loading users...
67
- </div>
68
-
69
- <div *ngIf="loadingState() === 'error'" class="error">
70
- {{ errorMessage() }}
71
- </div>
72
-
73
- <div class="user-grid">
74
- <div *ngFor="let user of activeUsers()" class="user-card">
75
- <h3>{{ user.name }}</h3>
76
- <p>{{ user.email }}</p>
77
- <span class="user-id">#{{ user.id }}</span>
78
- </div>
79
- </div>
80
-
81
- <div *ngIf="isPolling()" class="polling-info">
82
- Auto-refresh in {{ countdown() }}s
83
- <button (click)="refreshNow()">Refresh Now</button>
84
- </div>
85
- </div>
86
- `
87
- })
88
- export class UserListComponent {
89
- private httpManager = inject(HTTPManagerSignalsService);
90
-
91
- // Raw signals
92
- data = this.httpManager.data;
93
- isPending = this.httpManager.isPending;
94
- error = this.httpManager.error;
95
- countdown = this.httpManager.countdown;
96
-
97
- // Computed signals
98
- userCount = computed(() => this.data().length);
99
-
100
- activeUsers = computed(() =>
101
- this.data().filter(user => user.active !== false)
102
- );
103
-
104
- loadingState = computed(() => {
105
- if (this.isPending()) return 'loading';
106
- if (this.error()) return 'error';
107
- return 'idle';
108
- });
109
-
110
- errorMessage = computed(() => {
111
- const err = this.error();
112
- return err ? err.message || 'Unknown error' : '';
113
- });
114
-
115
- isPolling = computed(() => this.countdown() > 0);
116
-
117
- constructor() {
118
- // Initialize with polling
119
- this.loadUsersWithPolling();
120
- }
121
-
122
- loadUsersWithPolling() {
123
- this.httpManager.getRequest(
124
- ApiRequest.adapt({
125
- path: ['users'],
126
- polling: 30, // Poll every 30 seconds
127
- retry: { times: 3, delay: 2 },
128
- displayError: true
129
- })
130
- ).subscribe();
131
- }
132
-
133
- refreshNow() {
134
- this.loadUsersWithPolling();
135
- }
136
-
137
- stopPolling() {
138
- this.httpManager.stopPolling();
139
- }
140
- }
141
- ```
142
-
143
- ## API Reference
144
-
145
- ### Signal Properties
146
-
147
- | Signal | Type | Description | Usage |
148
- |--------|------|-------------|-------|
149
- | `data` | `Signal<any>` | Response data from requests | `this.data()` |
150
- | `isPending` | `Signal<boolean>` | Loading state indicator | `this.isPending()` |
151
- | `error` | `Signal<any>` | Error state | `this.error()` |
152
- | `countdown` | `Signal<number>` | Countdown for polling | `this.countdown()` |
153
-
154
- ### HTTP Methods
155
-
156
- All HTTP methods work the same as `HTTPManagerService`:
157
-
158
- ```typescript
159
- // GET Request
160
- this.httpManager.getRequest(
161
- ApiRequest.adapt({ path: ['users'] })
162
- ).subscribe();
163
-
164
- // POST Request
165
- this.httpManager.postRequest(
166
- ApiRequest.adapt({ path: ['users'] }),
167
- { name: 'John Doe', email: 'john@example.com' }
168
- ).subscribe();
169
-
170
- // PUT Request
171
- this.httpManager.putRequest(
172
- ApiRequest.adapt({ path: ['users', '123'] }),
173
- { name: 'Jane Doe' }
174
- ).subscribe();
175
-
176
- // DELETE Request
177
- this.httpManager.deleteRequest(
178
- ApiRequest.adapt({ path: ['users', '123'] })
179
- ).subscribe();
180
-
181
- // Download Request
182
- this.httpManager.downloadRequest(
183
- ApiRequest.adapt({
184
- path: ['files', 'report.pdf'],
185
- saveAs: 'my-report.pdf'
186
- })
187
- ).subscribe();
188
- ```
189
-
190
- ## Advanced Signal Patterns
191
-
192
- ### Computed Signals for Data Transformation
193
-
194
- ```typescript
195
- import { computed, signal, inject } from '@angular/core';
196
- import { HTTPManagerSignalsService, ApiRequest } from 'http-request-manager';
197
-
198
- @Component({
199
- template: `
200
- <div class="dashboard">
201
- <div class="stats">
202
- <div class="stat-card">
203
- <h3>Total Users</h3>
204
- <div class="stat-value">{{ totalUsers() }}</div>
205
- </div>
206
- <div class="stat-card">
207
- <h3>Active Users</h3>
208
- <div class="stat-value">{{ activeUsers() }}</div>
209
- </div>
210
- <div class="stat-card">
211
- <h3>Admins</h3>
212
- <div class="stat-value">{{ adminUsers() }}</div>
213
- </div>
214
- </div>
215
-
216
- <div class="filters">
217
- <select (change)="setRoleFilter($any($event.target).value)">
218
- <option value="">All Roles</option>
219
- <option value="admin">Admin</option>
220
- <option value="user">User</option>
221
- </select>
222
-
223
- <select (change)="setStatusFilter($any($event.target).value)">
224
- <option value="">All Status</option>
225
- <option value="active">Active</option>
226
- <option value="inactive">Inactive</option>
227
- </select>
228
- </div>
229
-
230
- <div class="user-list">
231
- <div *ngFor="let user of filteredUsers()">
232
- {{ user.name }} - {{ user.role }} ({{ user.status }})
233
- </div>
234
- </div>
235
- </div>
236
- `
237
- })
238
- export class UserDashboardComponent {
239
- private httpManager = inject(HTTPManagerSignalsService);
240
-
241
- // Raw data signal
242
- rawData = this.httpManager.data;
243
-
244
- // Filter state signals
245
- roleFilter = signal<string>('');
246
- statusFilter = signal<string>('');
247
-
248
- // Computed signals
249
- totalUsers = computed(() => this.rawData().length);
250
-
251
- activeUsers = computed(() =>
252
- this.rawData().filter(user => user.status === 'active').length
253
- );
254
-
255
- adminUsers = computed(() =>
256
- this.rawData().filter(user => user.role === 'admin').length
257
- );
258
-
259
- filteredUsers = computed(() => {
260
- const data = this.rawData();
261
- const roleFilter = this.roleFilter();
262
- const statusFilter = this.statusFilter();
263
-
264
- return data.filter(user => {
265
- const matchesRole = !roleFilter || user.role === roleFilter;
266
- const matchesStatus = !statusFilter || user.status === statusFilter;
267
- return matchesRole && matchesStatus;
268
- });
269
- });
270
-
271
- constructor() {
272
- this.loadUsers();
273
- }
274
-
275
- loadUsers() {
276
- this.httpManager.getRequest(
277
- ApiRequest.adapt({
278
- path: ['users'],
279
- adapter: User.adapt
280
- })
281
- ).subscribe();
282
- }
283
-
284
- setRoleFilter(role: string) {
285
- this.roleFilter.set(role);
286
- }
287
-
288
- setStatusFilter(status: string) {
289
- this.statusFilter.set(status);
290
- }
291
- }
292
- ```
293
-
294
- ### Effect-Based Side Effects
295
-
296
- ```typescript
297
- import { effect, inject } from '@angular/core';
298
- import { HTTPManagerSignalsService, ApiRequest } from 'http-request-manager';
299
-
300
- @Component({
301
- template: `
302
- <div class="notifications">
303
- <div *ngFor="let notification of notifications()">
304
- {{ notification.message }}
305
- </div>
306
- </div>
307
-
308
- <div class="data-display">
309
- <div *ngFor="let item of data()">
310
- {{ item.name }}
311
- </div>
312
- </div>
313
- `
314
- })
315
- export class NotificationComponent {
316
- private httpManager = inject(HTTPManagerSignalsService);
317
-
318
- data = this.httpManager.data;
319
- error = this.httpManager.error;
320
- isPending = this.httpManager.isPending;
321
-
322
- // External state
323
- notifications = signal<Array<{message: string, type: string}>>([]);
324
-
325
- constructor() {
326
- // Auto-load data on component init
327
- this.loadData();
328
-
329
- // Set up effects for side effects
330
- this.setupEffects();
331
- }
332
-
333
- private setupEffects() {
334
- // Show loading notifications
335
- effect(() => {
336
- if (this.isPending()) {
337
- this.addNotification('Loading data...', 'info');
338
- }
339
- });
340
-
341
- // Show error notifications
342
- effect(() => {
343
- const error = this.error();
344
- if (error) {
345
- this.addNotification(`Error: ${error.message}`, 'error');
346
- }
347
- });
348
-
349
- // Auto-retry on certain errors
350
- effect(() => {
351
- const error = this.error();
352
- if (error && error.status === 503) { // Service unavailable
353
- setTimeout(() => this.loadData(), 5000); // Retry in 5s
354
- }
355
- });
356
- }
357
-
358
- loadData() {
359
- this.httpManager.getRequest(
360
- ApiRequest.adapt({
361
- path: ['data'],
362
- retry: { times: 3, delay: 2 }
363
- })
364
- ).subscribe();
365
- }
366
-
367
- private addNotification(message: string, type: string) {
368
- const current = this.notifications();
369
- this.notifications.set([
370
- ...current,
371
- { message, type }
372
- ]);
373
-
374
- // Auto-remove after 5 seconds
375
- setTimeout(() => {
376
- const updated = this.notifications().slice(1);
377
- this.notifications.set(updated);
378
- }, 5000);
379
- }
380
- }
381
- ```
382
-
383
- ## Migration from Observables to Signals
384
-
385
- ### Before (Observable-based)
386
-
387
- ```typescript
388
- @Component({
389
- template: `
390
- <div *ngIf="isLoading$ | async">Loading...</div>
391
- <div *ngFor="let user of users$ | async">
392
- {{ user.name }}
393
- </div>
394
- <div *ngIf="error$ | async as error">
395
- Error: {{ error }}
396
- </div>
397
- `
398
- })
399
- export class UserListComponent implements OnInit {
400
- private httpManager = inject(HTTPManagerService);
401
-
402
- users$ = this.httpManager.data$;
403
- isLoading$ = this.httpManager.isPending$;
404
- error$ = this.httpManager.error$;
405
-
406
- ngOnInit() {
407
- this.httpManager.getRequest(
408
- ApiRequest.adapt({ path: ['users'] })
409
- ).subscribe();
410
- }
411
- }
412
- ```
413
-
414
- ### After (Signal-based)
415
-
416
- ```typescript
417
- @Component({
418
- template: `
419
- <div *ngIf="isLoading()">Loading...</div>
420
- <div *ngIf="data() as users">
421
- <div *ngFor="let user of users">
422
- {{ user.name }}
423
- </div>
424
- </div>
425
- <div *ngIf="error() as error">
426
- Error: {{ error }}
427
- </div>
428
- `
429
- })
430
- export class UserListComponent {
431
- private httpManager = inject(HTTPManagerSignalsService);
432
-
433
- data = this.httpManager.data;
434
- isLoading = this.httpManager.isPending;
435
- error = this.httpManager.error;
436
-
437
- constructor() {
438
- this.httpManager.getRequest(
439
- ApiRequest.adapt({ path: ['users'] })
440
- ).subscribe();
441
- }
442
- }
443
- ```
444
-
445
- ## Integration with Other Signal-Based Services
446
-
447
- ### Local Storage Signals
448
-
449
- ```typescript
450
- import { signal, computed, inject } from '@angular/core';
451
- import { LocalStorageSignalsManagerService } from 'http-request-manager';
452
-
453
- @Component({
454
- template: `
455
- <div class="user-preferences">
456
- <h3>Welcome, {{ userName() }}!</h3>
457
-
458
- <div class="preferences">
459
- <label>
460
- Theme:
461
- <select [value]="theme()" (change)="setTheme($any($event.target).value)">
462
- <option value="light">Light</option>
463
- <option value="dark">Dark</option>
464
- </select>
465
- </label>
466
-
467
- <label>
468
- Notifications:
469
- <input type="checkbox" [checked]="notifications()"
470
- (change)="setNotifications($any($event.target).checked)">
471
- </label>
472
- </div>
473
-
474
- <div class="data-sync">
475
- <p>Data last updated: {{ lastUpdated() }}</p>
476
- <button (click)="refreshData()">Refresh from Server</button>
477
- </div>
478
- </div>
479
- `
480
- })
481
- export class UserPreferencesComponent {
482
- private httpManager = inject(HTTPManagerSignalsService);
483
- private storage = inject(LocalStorageSignalsManagerService);
484
-
485
- // HTTP data signals
486
- serverData = this.httpManager.data;
487
-
488
- // Storage signals
489
- theme = this.storage.signal('theme', 'light');
490
- notifications = this.storage.signal('notifications', true);
491
- lastUpdated = this.storage.signal('lastUpdated', new Date().toISOString());
492
-
493
- // Computed signals
494
- userName = computed(() => {
495
- const data = this.serverData();
496
- return data?.user?.name || 'Guest';
497
- });
498
-
499
- hasUnsavedChanges = computed(() => {
500
- // Compare local storage with server data
501
- return this.theme() !== 'light' || this.notifications() !== true;
502
- });
503
-
504
- constructor() {
505
- this.loadUserData();
506
- this.setupAutoSync();
507
- }
508
-
509
- private setupAutoSync() {
510
- // Auto-save to server when preferences change
511
- setInterval(() => {
512
- if (this.hasUnsavedChanges()) {
513
- this.saveToServer();
514
- }
515
- }, 30000); // Every 30 seconds
516
- }
517
-
518
- loadUserData() {
519
- this.httpManager.getRequest(
520
- ApiRequest.adapt({ path: ['user', 'preferences'] })
521
- ).subscribe();
522
- }
523
-
524
- setTheme(theme: string) {
525
- this.theme.set(theme);
526
- this.updateLastUpdated();
527
- }
528
-
529
- setNotifications(enabled: boolean) {
530
- this.notifications.set(enabled);
531
- this.updateLastUpdated();
532
- }
533
-
534
- private updateLastUpdated() {
535
- this.lastUpdated.set(new Date().toISOString());
536
- }
537
-
538
- refreshData() {
539
- this.loadUserData();
540
- }
541
-
542
- private saveToServer() {
543
- const preferences = {
544
- theme: this.theme(),
545
- notifications: this.notifications(),
546
- lastUpdated: this.lastUpdated()
547
- };
548
-
549
- this.httpManager.postRequest(
550
- ApiRequest.adapt({ path: ['user', 'preferences'] }),
551
- preferences
552
- ).subscribe();
553
- }
554
- }
555
- ```
556
-
557
- ## Performance Considerations
558
-
559
- ### Optimized Rendering
560
-
561
- ```typescript
562
- import { trackByFn } from '@angular/core';
563
-
564
- @Component({
565
- template: `
566
- <div *ngFor="let user; trackBy: trackByUserId">
567
- {{ user.name }}
568
- </div>
569
- `
570
- })
571
- export class OptimizedComponent {
572
- private httpManager = inject(HTTPManagerSignalsService);
573
- data = this.httpManager.data;
574
-
575
- trackByUserId = (index: number, user: any) => user.id;
576
- }
577
- ```
578
-
579
- ### Efficient Computed Signals
580
-
581
- ```typescript
582
- // ✅ Good - Efficient computed
583
- filteredData = computed(() => {
584
- return this.data().filter(item => item.active);
585
- });
586
-
587
- // ❌ Avoid - Inefficient computed
588
- allData = computed(() => this.data());
589
- activeData = computed(() => this.allData().filter(item => item.active));
590
- ```
591
-
592
- ## Best Practices
593
-
594
- ### 1. Signal Initialization
595
-
596
- ```typescript
597
- // ✅ Good
598
- data = this.httpManager.data;
599
- isLoading = this.httpManager.isPending;
600
-
601
- // ❌ Avoid
602
- data = signal<any[]>([]);
603
- isLoading = signal(false);
604
- ```
605
-
606
- ### 2. Computed Signal Usage
607
-
608
- ```typescript
609
- // ✅ Good
610
- userCount = computed(() => this.data().length);
611
-
612
- // ❌ Avoid
613
- getUserCount() {
614
- return this.data().length; // Called on every change detection
615
- }
616
- ```
617
-
618
- ### 3. Effect Cleanup
619
-
620
- ```typescript
621
- import { effect, inject, OnDestroy } from '@angular/core';
622
-
623
- @Component({ template: '...' })
624
- export class MyComponent implements OnDestroy {
625
- private httpManager = inject(HTTPManagerSignalsService);
626
- private cleanup?: () => void;
627
-
628
- constructor() {
629
- // Store cleanup function
630
- this.setupEffects();
631
- }
632
-
633
- private setupEffects() {
634
- const stopEffect = effect(() => {
635
- console.log('Data changed:', this.httpManager.data());
636
- });
637
-
638
- this.cleanup = stopEffect;
639
- }
640
-
641
- ngOnDestroy() {
642
- if (this.cleanup) {
643
- this.cleanup();
644
- }
645
- }
646
- }
647
- ```
648
-
649
- ## Related Documentation
650
-
651
- - [HTTP Manager Service](http-manager/README.md)
652
- - [HTTP State Service](http-state/README.md)
653
- - [Local Storage Signals](local-storage/README.md)
654
- - [Angular Signals Documentation](https://angular.io/guide/signals)