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,56 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';
3
- import { Observable, Subscription } from 'rxjs';
4
- import { LangChangeEvent, TranslateService } from '@ngx-translate/core';
5
-
6
- @Injectable()
7
- export class RequestHeadersInterceptor implements HttpInterceptor {
8
-
9
- subscriptions = new Subscription()
10
- language = 'en-CA'
11
-
12
- get currentDate() {
13
-
14
- const date = new Date()
15
-
16
- const year = date.getFullYear()
17
- const month = String(date.getMonth() + 1).padStart(2, '0')
18
- const day = String(date.getDate()).padStart(2, '0')
19
-
20
- return `${year}-${month}-${day}`
21
-
22
- }
23
-
24
- constructor(
25
- private translate: TranslateService
26
- ) {
27
- this.subscriptions.add(
28
- this.translate.onLangChange
29
- .subscribe((params: LangChangeEvent) => {
30
- this.language = `${params.lang}-CA`
31
- })
32
- )
33
- }
34
-
35
- intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
36
-
37
- // Don't override Content-Type for FormData (file uploads) — let browser set multipart/form-data
38
- const skipContentType = request.body instanceof FormData;
39
-
40
- request = request.clone({
41
- setHeaders: {
42
- ...(skipContentType ? {} : { 'Content-Type': 'application/json' }),
43
- 'Accept-Language': this.language || 'en-CA',
44
- 'Current-Date': this.currentDate
45
- }
46
- })
47
-
48
- return next.handle(request)
49
-
50
- }
51
-
52
- ngOnDestroy() {
53
- this.subscriptions.unsubscribe()
54
- }
55
- }
56
-
@@ -1,509 +0,0 @@
1
- # Message Display System
2
-
3
- A flexible, client-side message display system for WebSocket messages that determines presentation based on message content using rule-based routing.
4
-
5
- ## Overview
6
-
7
- The Message Display System provides a pluggable architecture for displaying WebSocket messages in different formats (snackbar, dialog, carousel, banner) based on configurable rules. The system is **fully client-side** - no server changes are required.
8
-
9
- ## Features
10
-
11
- ✅ **Rule-based routing** - First-match-wins rule evaluation
12
- ✅ **Multiple display types** - Snackbar, Dialog, Carousel, Banner (extensible)
13
- ✅ **Markdown support** - Optional markdown rendering for rich content
14
- ✅ **Backward compatible** - Existing messages work without changes
15
- ✅ **Zero server changes** - All logic is client-side
16
- ✅ **Configurable** - Customize rules and strategies
17
-
18
- ## Architecture
19
-
20
- ```
21
- WebSocket Message
22
-
23
-
24
- MessageDisplayRouterService
25
-
26
- ├─→ Evaluates rules (first match wins)
27
- ├─→ Selects strategy
28
-
29
-
30
- Strategy (Snackbar / Dialog / Carousel / Banner)
31
-
32
-
33
- Display Component (MatSnackBar / MatDialog / Custom)
34
- ```
35
-
36
- ## Usage
37
-
38
- ### Basic Usage (Automatic)
39
-
40
- Messages are automatically routed based on rules. No code changes needed in components:
41
-
42
- ```typescript
43
- // In ws-messaging.component.ts (already configured)
44
- this.latestCommunicationMessages$.subscribe((message) => {
45
- this.messageDisplayService.display(message);
46
- });
47
- ```
48
-
49
- ### Message Payload Structure
50
-
51
- ```typescript
52
- {
53
- type: "channelMessage",
54
- content: {
55
- // Optional: Explicit display configuration
56
- displayConfig?: {
57
- type: 'snackbar' | 'dialog' | 'carousel' | 'banner',
58
- supportsMarkdown?: boolean,
59
- stackable?: boolean,
60
- autoDismiss?: number
61
- },
62
-
63
- // Content
64
- title?: string,
65
- message: string,
66
-
67
- // Rich media
68
- slides?: Slide[],
69
- image?: string,
70
-
71
- // Metadata for rule matching
72
- severity?: 'low' | 'medium' | 'high' | 'critical',
73
- category?: string,
74
- messageType?: string,
75
-
76
- // Actions
77
- actions?: Action[]
78
- }
79
- }
80
- ```
81
-
82
- ### Examples
83
-
84
- #### 1. Simple Message (Default - Snackbar)
85
-
86
- ```typescript
87
- {
88
- type: "channelMessage",
89
- content: {
90
- message: "Hello world"
91
- }
92
- }
93
- // → Displays as snackbar (default rule)
94
- ```
95
-
96
- #### 2. Dialog with Markdown
97
-
98
- ```typescript
99
- {
100
- type: "channelMessage",
101
- content: {
102
- displayConfig: {
103
- type: 'dialog',
104
- supportsMarkdown: true
105
- },
106
- title: 'Update',
107
- message: '# Heading\n\n**Bold text** and *italics*'
108
- }
109
- }
110
- // → Displays as dialog with rendered markdown
111
- ```
112
-
113
- #### 3. Carousel
114
-
115
- ```typescript
116
- {
117
- type: "channelMessage",
118
- content: {
119
- displayConfig: {
120
- type: 'carousel',
121
- supportsMarkdown: true
122
- },
123
- slides: [
124
- { title: 'Slide 1', message: 'Content 1' },
125
- { title: 'Slide 2', message: 'Content 2' }
126
- ]
127
- }
128
- }
129
- // → Displays as carousel with navigation
130
- ```
131
-
132
- #### 4. Error Message (Semantic Rule)
133
-
134
- ```typescript
135
- {
136
- type: "channelMessage",
137
- content: {
138
- severity: 'error',
139
- message: 'Something went wrong'
140
- }
141
- }
142
- // → Displays as dialog (error severity rule)
143
- ```
144
-
145
- ## Default Rules
146
-
147
- Rules are evaluated in order - first match wins:
148
-
149
- 1. **Explicit displayConfig.type** - `carousel`, `dialog`, `banner`
150
- 2. **Content-based** - Has slides → carousel, Has images → dialog
151
- 3. **Semantic** - Error severity → dialog, System category → banner, Chat → snackbar
152
- 4. **Default** - Fallback to snackbar
153
-
154
- ## Customizing Rules
155
-
156
- You can override the default rules:
157
-
158
- ```typescript
159
- // In your app module or component
160
- const customRules: DisplayRule[] = [
161
- {
162
- id: 'urgent-messages',
163
- match: (msg) => msg.content?.severity === 'critical',
164
- display: { type: 'dialog', stackable: false }
165
- },
166
- // ... more custom rules
167
- // Default MUST be last
168
- {
169
- id: 'default',
170
- match: () => true,
171
- display: { type: 'snackbar' }
172
- }
173
- ];
174
-
175
- // Inject and set rules
176
- const routerService = inject(MessageDisplayRouterService);
177
- routerService.setRules(customRules);
178
- ```
179
-
180
- ## Adding Custom Strategies
181
-
182
- ```typescript
183
- @Injectable()
184
- export class CustomStrategy implements IDisplayStrategy {
185
- name = 'custom';
186
-
187
- canHandle(message: CommunicationMessage): boolean {
188
- return message.content?.messageType === 'special';
189
- }
190
-
191
- display(message: CommunicationMessage, config: DisplayConfig): void {
192
- // Your custom display logic
193
- }
194
- }
195
-
196
- // Register the strategy
197
- const routerService = inject(MessageDisplayRouterService);
198
- routerService.registerStrategies([inject(CustomStrategy)]);
199
- ```
200
-
201
- ---
202
-
203
- ## How to Add New Display Types (Step-by-Step Guide)
204
-
205
- To add a new display type (e.g., Dialog, Carousel, Banner), follow these steps:
206
-
207
- ### Step 1: Add Display Type to the Type Union
208
-
209
- **File:** `models/display-config.model.ts`
210
-
211
- ```typescript
212
- export type DisplayType = 'snackbar' | 'dialog' | 'carousel' | 'banner' | 'inline' | 'YOUR_TYPE';
213
- ```
214
-
215
- ### Step 2: Create the Display Component (if needed)
216
-
217
- For complex display types (like dialogs, carousels), create an Angular component:
218
-
219
- **File:** `components/your-component/your-component.component.ts`
220
-
221
- ```typescript
222
- import { Component, Inject, Input } from '@angular/core';
223
- import { MAT_DIALOG_DATA } from '@angular/material/dialog';
224
- import { CommunicationMessage } from '../models/communication-message.model';
225
-
226
- @Component({
227
- selector: 'app-your-component',
228
- templateUrl: './your-component.component.html',
229
- styleUrls: ['./your-component.component.scss'],
230
- standalone: false
231
- })
232
- export class YourComponent {
233
- @Input() message: CommunicationMessage;
234
-
235
- constructor(@Inject(MAT_DIALOG_DATA) public data: any) {}
236
- }
237
- ```
238
-
239
- **File:** `components/your-component/your-component.component.html`
240
-
241
- ```html
242
- <h2>{{ data.content?.title }}</h2>
243
- <p>{{ data.content?.message }}</p>
244
- ```
245
-
246
- ### Step 3: Create the Strategy
247
-
248
- **File:** `strategies/your.strategy.ts`
249
-
250
- ```typescript
251
- import { Injectable, inject } from '@angular/core';
252
- import { IDisplayStrategy } from '../models/display-strategy.interface';
253
- import { CommunicationMessage } from '../models/communication-message.model';
254
- import { DisplayConfig } from '../models/display-config.model';
255
- import { YourComponent } from '../components/your-component/your-component.component';
256
- import { MatDialog } from '@angular/material/dialog';
257
-
258
- @Injectable()
259
- export class YourStrategy implements IDisplayStrategy {
260
- name = 'your_type';
261
-
262
- private dialog = inject(MatDialog);
263
-
264
- canHandle(message: CommunicationMessage): boolean {
265
- return message.content?.displayConfig?.type === 'your_type';
266
- }
267
-
268
- display(message: CommunicationMessage, config: DisplayConfig): void {
269
- this.dialog.open(YourComponent, {
270
- data: message,
271
- width: config.width || '600px',
272
- disableClose: false,
273
- panelClass: 'your-dialog-class'
274
- });
275
- }
276
- }
277
- ```
278
-
279
- ### Step 4: Add Default Rules
280
-
281
- **File:** `rules/default-display-rules.ts`
282
-
283
- Add your rule in the appropriate position (order matters!):
284
-
285
- ```typescript
286
- export const defaultDisplayRules: DisplayRule[] = [
287
- // 1. Explicit display types (highest priority)
288
- {
289
- id: 'your-type',
290
- name: 'Your Display Type',
291
- match: (message) => message.content?.displayConfig?.type === 'your_type',
292
- display: {
293
- type: 'your_type',
294
- supportsMarkdown: true,
295
- stackable: false,
296
- width: '600px'
297
- }
298
- },
299
-
300
- // 2. Content-based rules
301
- // ... existing rules ...
302
-
303
- // 3. Default (must be last)
304
- {
305
- id: 'default',
306
- name: 'Default (Snackbar)',
307
- match: () => true,
308
- display: {
309
- type: 'snackbar',
310
- supportsMarkdown: false,
311
- stackable: true,
312
- autoDismiss: 3000
313
- }
314
- }
315
- ];
316
- ```
317
-
318
- ### Step 5: Register the Strategy
319
-
320
- **File:** `services/message-display-router.service.ts`
321
-
322
- ```typescript
323
- import { Injectable, inject } from '@angular/core';
324
- import { IDisplayStrategy } from '../models/display-strategy.interface';
325
- import { DisplayRule } from '../models/display-rule.interface';
326
- import { CommunicationMessage } from '../models/communication-message.model';
327
- import { defaultDisplayRules } from '../rules/default-display-rules';
328
- import { SnackbarStrategy } from '../strategies/snackbar.strategy';
329
- import { YourStrategy } from '../strategies/your.strategy'; // NEW
330
-
331
- @Injectable({ providedIn: 'root' })
332
- export class MessageDisplayRouterService {
333
-
334
- private snackbarStrategy = inject(SnackbarStrategy);
335
- private yourStrategy = inject(YourStrategy); // NEW
336
-
337
- // All available strategies
338
- private strategies: IDisplayStrategy[] = [
339
- this.snackbarStrategy,
340
- this.yourStrategy // NEW - add your strategy here
341
- ];
342
-
343
- // Rules are evaluated in order - first match wins
344
- private rules: DisplayRule[] = defaultDisplayRules;
345
-
346
- display(message: CommunicationMessage): void {
347
- console.log('📨 MessageDisplayRouterService: Processing message:', message);
348
-
349
- // Find FIRST matching rule (order matters!)
350
- const matchingRule = this.rules.find(rule => rule.match(message));
351
-
352
- // Get the rule (will be 'default' if nothing else matches)
353
- const rule = matchingRule || this.rules[this.rules.length - 1];
354
-
355
- console.log(`🎯 MessageDisplayRouterService: Matched rule '${rule.id}' (${rule.name})`);
356
- console.log(` → Display type: ${rule.display.type}`);
357
-
358
- // Get strategy for the display type
359
- const strategy = this.strategies.find(s => s.name === rule.display.type);
360
-
361
- if (!strategy) {
362
- console.warn(`⚠️ MessageDisplayRouterService: No strategy found for type '${rule.display.type}', falling back to snackbar`);
363
- this.snackbarStrategy.display(message, rule.display);
364
- return;
365
- }
366
-
367
- // Execute display
368
- console.log(`🚀 MessageDisplayRouterService: Executing ${strategy.name} strategy`);
369
- strategy.display(message, rule.display);
370
- }
371
-
372
- registerStrategies(strategies: IDisplayStrategy[]): void {
373
- this.strategies.push(...strategies);
374
- }
375
-
376
- setRules(rules: DisplayRule[]): void {
377
- this.rules = rules;
378
- }
379
- }
380
- ```
381
-
382
- ### Step 6: Update Module Imports (if needed)
383
-
384
- **File:** `http-request-manager.module.ts`
385
-
386
- Add any required module imports:
387
-
388
- ```typescript
389
- import { NgModule } from '@angular/core';
390
- import { MatDialogModule } from '@angular/material/dialog';
391
- import { MarkdownModule } from 'ngx-markdown';
392
- // ... other imports
393
-
394
- @NgModule({
395
- imports: [
396
- CommonModule,
397
- MatDialogModule, // For dialogs
398
- MarkdownModule.forChild(), // For markdown support
399
- // ... other modules
400
- ]
401
- })
402
- export class HttpRequestManagerModule {}
403
- ```
404
-
405
- ### Step 7: Test Your Display Type
406
-
407
- Create a test message:
408
-
409
- ```typescript
410
- {
411
- type: "channelMessage",
412
- content: {
413
- displayConfig: {
414
- type: 'your_type',
415
- supportsMarkdown: true
416
- },
417
- title: 'Test Title',
418
- message: 'Test message content'
419
- }
420
- }
421
- ```
422
-
423
- Send it via WebSocket and verify it displays correctly.
424
-
425
- ---
426
-
427
- ## Quick Reference: Strategy Implementation Checklist
428
-
429
- - [ ] Add display type to `DisplayType` union
430
- - [ ] Create component (if needed for complex UI)
431
- - [ ] Create strategy class implementing `IDisplayStrategy`
432
- - [ ] Add rule to `default-display-rules.ts`
433
- - [ ] Register strategy in `MessageDisplayRouterService`
434
- - [ ] Add required module imports
435
- - [ ] Test with sample message
436
-
437
- ---
438
-
439
- ## Current Implementation Status
440
-
441
- ### ✅ Phase 1: Core Infrastructure (COMPLETE)
442
- - [x] Models and interfaces
443
- - [x] Default display rules
444
- - [x] MessageDisplayRouterService
445
- - [x] SnackbarStrategy
446
- - [x] Integration with ws-messaging.component
447
-
448
- ### 🚧 Phase 2: Dialog Support (TODO)
449
- - [ ] RichContentDialogComponent
450
- - [ ] DialogStrategy
451
- - [ ] MarkdownModule integration
452
-
453
- ### 🚧 Phase 3: Carousel & Banner (TODO)
454
- - [ ] CarouselDialogComponent
455
- - [ ] CarouselStrategy
456
- - [ ] BannerComponent
457
- - [ ] BannerStrategy
458
-
459
- ### 🚧 Phase 4: Configuration API (TODO)
460
- - [ ] forRoot() configuration
461
- - [ ] Injection tokens for customization
462
-
463
- ## Files
464
-
465
- ```
466
- message-display/
467
- ├── models/
468
- │ ├── display-config.model.ts
469
- │ ├── display-rule.interface.ts
470
- │ ├── display-strategy.interface.ts
471
- │ ├── communication-message.model.ts
472
- │ ├── slide.model.ts
473
- │ ├── action.model.ts
474
- │ └── index.ts
475
- ├── services/
476
- │ └── message-display-router.service.ts
477
- ├── strategies/
478
- │ └── snackbar.strategy.ts
479
- ├── rules/
480
- │ └── default-display-rules.ts
481
- └── index.ts
482
- ```
483
-
484
- ## Dependencies
485
-
486
- - `toast-message-display` - For snackbar display
487
- - `@angular/material` - For dialog components (future)
488
- - `ngx-markdown` - For markdown rendering (future)
489
-
490
- ## Testing
491
-
492
- ```bash
493
- # Run tests for http-request-manager
494
- ng test http-request-manager
495
-
496
- # Test specific component
497
- ng test --include='**/message-display/**/*.spec.ts'
498
- ```
499
-
500
- ## Future Enhancements
501
-
502
- - Dialog strategy with markdown support
503
- - Carousel strategy with slide navigation
504
- - Banner strategy for persistent notifications
505
- - Custom component registration
506
- - Action callback handling
507
- - Link click handling in markdown
508
- - Stacking behavior configuration
509
- - Animation configuration
@@ -1,4 +0,0 @@
1
- export * from './models';
2
- export * from './services/message-display-router.service';
3
- export * from './strategies/snackbar.strategy';
4
- export * from './rules/default-display-rules';
@@ -1,27 +0,0 @@
1
- export interface ActionInterface {
2
- label: string;
3
- action: 'close' | 'navigate' | 'callback' | 'custom';
4
- target?: string;
5
- callback?: string;
6
- primary?: boolean;
7
- }
8
-
9
- export class Action implements ActionInterface {
10
- constructor(
11
- public label: string = '',
12
- public action: 'close' | 'navigate' | 'callback' | 'custom' = 'close',
13
- public target?: string,
14
- public callback?: string,
15
- public primary?: boolean
16
- ) {}
17
-
18
- static adapt(item?: any): Action {
19
- return new Action(
20
- item?.label,
21
- item?.action,
22
- item?.target,
23
- item?.callback,
24
- item?.primary
25
- );
26
- }
27
- }
@@ -1,77 +0,0 @@
1
- import { Slide } from './slide.model';
2
- import { Action } from './action.model';
3
- import { DisplayConfig } from './display-config.model';
4
-
5
- export interface MessageContentInterface {
6
- displayConfig?: DisplayConfig;
7
- title?: string;
8
- message: string;
9
- slides?: Slide[];
10
- image?: string;
11
- images?: string[];
12
- actions?: Action[];
13
- messageType?: string;
14
- icon?: string;
15
- data?: any;
16
- }
17
-
18
- export class MessageContent implements MessageContentInterface {
19
- constructor(
20
- public displayConfig?: DisplayConfig,
21
- public title?: string,
22
- public message: string = '',
23
- public slides?: Slide[],
24
- public image?: string,
25
- public images?: string[],
26
- public actions?: Action[],
27
- public messageType?: string,
28
- public icon?: string,
29
- public data?: any
30
- ) {}
31
-
32
- static adapt(item?: any): MessageContent {
33
- return new MessageContent(
34
- item?.displayConfig ? DisplayConfig.adapt(item.displayConfig) : undefined,
35
- item?.title,
36
- item?.message,
37
- item?.slides ? item.slides.map((slideItem: any) => Slide.adapt(slideItem)) : [],
38
- item?.image,
39
- item?.images,
40
- item?.actions ? item.actions.map((actionItem: any) => Action.adapt(actionItem)) : [],
41
- item?.messageType,
42
- item?.icon,
43
- item?.data
44
- );
45
- }
46
- }
47
-
48
- export interface CommunicationMessageInterface {
49
- type: string;
50
- messageId?: number;
51
- channel?: string;
52
- sessionId?: { id: string };
53
- timestamp?: string;
54
- content: MessageContent;
55
- }
56
-
57
- export class CommunicationMessage implements CommunicationMessageInterface {
58
- constructor(
59
- public type: string = '',
60
- public messageId?: number,
61
- public channel?: string,
62
- public sessionId?: { id: string },
63
- public timestamp?: string,
64
- public content: MessageContent = MessageContent.adapt()
65
- ) {}
66
-
67
- static adapt(item?: any): CommunicationMessage {
68
- return new CommunicationMessage(
69
- item?.type,
70
- item?.messageId,
71
- item?.channel,
72
- item?.sessionId,
73
- item?.timestamp,
74
- item?.content ? MessageContent.adapt(item.content) : MessageContent.adapt()
75
- );
76
- }
77
- }
@@ -1,35 +0,0 @@
1
- export type DisplayType = 'snackbar' | 'dialog' | 'carousel' | 'banner' | 'inline';
2
-
3
- export interface DisplayConfigInterface {
4
- type: DisplayType;
5
- supportsMarkdown?: boolean;
6
- stackable?: boolean;
7
- queueBehavior?: 'replace' | 'queue' | 'ignore';
8
- autoDismiss?: number;
9
- width?: string;
10
- height?: string;
11
- }
12
-
13
- export class DisplayConfig implements DisplayConfigInterface {
14
- constructor(
15
- public type: DisplayType = 'snackbar',
16
- public supportsMarkdown?: boolean,
17
- public stackable?: boolean,
18
- public queueBehavior?: 'replace' | 'queue' | 'ignore',
19
- public autoDismiss?: number,
20
- public width?: string,
21
- public height?: string
22
- ) {}
23
-
24
- static adapt(item?: any): DisplayConfig {
25
- return new DisplayConfig(
26
- item?.type,
27
- item?.supportsMarkdown,
28
- item?.stackable,
29
- item?.queueBehavior,
30
- item?.autoDismiss,
31
- item?.width,
32
- item?.height
33
- );
34
- }
35
- }