http-request-manager 18.7.21 → 18.7.24

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 (198) hide show
  1. package/fesm2022/http-request-manager.mjs +7633 -0
  2. package/fesm2022/http-request-manager.mjs.map +1 -0
  3. package/http-request-manager-18.7.24.tgz +0 -0
  4. package/package.json +16 -5
  5. package/types/http-request-manager.d.ts +2277 -0
  6. package/ARCHITECTURE.md +0 -483
  7. package/DATABASE_README.md +0 -1176
  8. package/HTTP_MANAGER_README.md +0 -579
  9. package/HTTP_SINGNALS_MANAGER_README.md +0 -654
  10. package/HTTP_STATE_MANAGER_README.md +0 -948
  11. package/INTERCEPTOR_README.md +0 -549
  12. package/LOCAL_STORAGE_README.md +0 -1056
  13. package/STORE_STATE_MANAGER_README.md +0 -1322
  14. package/UTILS_README.md +0 -1186
  15. package/WS_MANAGER_README.md +0 -613
  16. package/ng-package.json +0 -8
  17. package/src/lib/http-request-manager.module.ts +0 -132
  18. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.html +0 -65
  19. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.scss +0 -0
  20. package/src/lib/http-request-services-demo/database-data-demo/database-data-demo.component.ts +0 -224
  21. package/src/lib/http-request-services-demo/http-request-services-demo.component.html +0 -114
  22. package/src/lib/http-request-services-demo/http-request-services-demo.component.scss +0 -6
  23. package/src/lib/http-request-services-demo/http-request-services-demo.component.ts +0 -52
  24. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.html +0 -195
  25. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.scss +0 -17
  26. package/src/lib/http-request-services-demo/local-storage-demo/local-storage-demo.component.ts +0 -206
  27. package/src/lib/http-request-services-demo/local-storage-signals-demo/local-storage-signals-demo.component.html +0 -200
  28. package/src/lib/http-request-services-demo/local-storage-signals-demo/local-storage-signals-demo.component.scss +0 -17
  29. package/src/lib/http-request-services-demo/local-storage-signals-demo/local-storage-signals-demo.component.ts +0 -212
  30. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.html +0 -53
  31. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.scss +0 -60
  32. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/download-file/download-file.component.ts +0 -72
  33. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-download.module.ts +0 -28
  34. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.html +0 -10
  35. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.scss +0 -29
  36. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/file-downloader.component.ts +0 -100
  37. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/models/download-labels-model.ts +0 -22
  38. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.html +0 -8
  39. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.scss +0 -19
  40. package/src/lib/http-request-services-demo/request-manager-demo/file-downloader/spinner/spinner.component.ts +0 -26
  41. package/src/lib/http-request-services-demo/request-manager-demo/models/app-session.model.ts +0 -30
  42. package/src/lib/http-request-services-demo/request-manager-demo/models/app.model.ts +0 -19
  43. package/src/lib/http-request-services-demo/request-manager-demo/models/get-sample.model.ts +0 -25
  44. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-ai-prompt.ts +0 -19
  45. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client-details.ts +0 -24
  46. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client-info.ts +0 -30
  47. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-client.model.ts +0 -49
  48. package/src/lib/http-request-services-demo/request-manager-demo/models/sample-mapper-client-info.ts +0 -33
  49. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.html +0 -392
  50. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.scss +0 -24
  51. package/src/lib/http-request-services-demo/request-manager-demo/request-manager-demo.component.ts +0 -461
  52. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.html +0 -393
  53. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.scss +0 -24
  54. package/src/lib/http-request-services-demo/request-manager-state-demo/request-manager-state-demo.component.ts +0 -421
  55. package/src/lib/http-request-services-demo/request-manager-state-demo/services/state-manager-demo.service.ts +0 -87
  56. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/services/state-data-request.service.ts +0 -120
  57. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-ai-messaging/ws-ai-messaging.component.css +0 -0
  58. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-ai-messaging/ws-ai-messaging.component.html +0 -3
  59. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-ai-messaging/ws-ai-messaging.component.ts +0 -16
  60. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-chats/ws-chats.component.css +0 -0
  61. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-chats/ws-chats.component.html +0 -3
  62. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-chats/ws-chats.component.ts +0 -16
  63. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.css +0 -31
  64. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.html +0 -72
  65. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.scss +0 -41
  66. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.spec.ts +0 -205
  67. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-data-control/ws-data-control.component.ts +0 -77
  68. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.css +0 -11
  69. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.html +0 -96
  70. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.spec.ts +0 -31
  71. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-messaging/ws-messaging.component.ts +0 -229
  72. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.css +0 -30
  73. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.html +0 -172
  74. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.spec.ts +0 -31
  75. package/src/lib/http-request-services-demo/request-manager-ws-demo/components/ws-notifications/ws-notifications.component.ts +0 -239
  76. package/src/lib/http-request-services-demo/request-manager-ws-demo/models/oidc-client.model.ts +0 -31
  77. package/src/lib/http-request-services-demo/request-manager-ws-demo/models/user-data.model.ts +0 -32
  78. package/src/lib/http-request-services-demo/request-manager-ws-demo/request-manager-ws-demo.component.css +0 -0
  79. package/src/lib/http-request-services-demo/request-manager-ws-demo/request-manager-ws-demo.component.html +0 -84
  80. package/src/lib/http-request-services-demo/request-manager-ws-demo/request-manager-ws-demo.component.ts +0 -41
  81. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/index.ts +0 -3
  82. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/message-service-demo.service.ts +0 -83
  83. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/notification-service-demo.service.ts +0 -147
  84. package/src/lib/http-request-services-demo/request-manager-ws-demo/services/state-service-demo.service.ts +0 -158
  85. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/download-file/download-file.component.html +0 -53
  86. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/download-file/download-file.component.scss +0 -60
  87. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/download-file/download-file.component.ts +0 -72
  88. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-download.module.ts +0 -28
  89. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-downloader.component.html +0 -10
  90. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-downloader.component.scss +0 -29
  91. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/file-downloader.component.ts +0 -100
  92. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/models/download-labels-model.ts +0 -22
  93. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/spinner/spinner.component.html +0 -8
  94. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/spinner/spinner.component.scss +0 -19
  95. package/src/lib/http-request-services-demo/request-signals-manager-demo/file-downloader/spinner/spinner.component.ts +0 -26
  96. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/app-session.model.ts +0 -30
  97. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/app.model.ts +0 -19
  98. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/get-sample.model.ts +0 -25
  99. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-ai-prompt.ts +0 -19
  100. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-client-details.ts +0 -24
  101. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-client-info.ts +0 -30
  102. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-client.model.ts +0 -49
  103. package/src/lib/http-request-services-demo/request-signals-manager-demo/models/sample-mapper-client-info.ts +0 -33
  104. package/src/lib/http-request-services-demo/request-signals-manager-demo/request-signals-manager-demo.component.html +0 -380
  105. package/src/lib/http-request-services-demo/request-signals-manager-demo/request-signals-manager-demo.component.scss +0 -24
  106. package/src/lib/http-request-services-demo/request-signals-manager-demo/request-signals-manager-demo.component.ts +0 -410
  107. package/src/lib/http-request-services-demo/store-state-manager-demo/models/settings.model.ts +0 -28
  108. package/src/lib/http-request-services-demo/store-state-manager-demo/services/settings-state.service.ts +0 -48
  109. package/src/lib/http-request-services-demo/store-state-manager-demo/store-state-manager-demo.component.css +0 -0
  110. package/src/lib/http-request-services-demo/store-state-manager-demo/store-state-manager-demo.component.html +0 -23
  111. package/src/lib/http-request-services-demo/store-state-manager-demo/store-state-manager-demo.component.ts +0 -36
  112. package/src/lib/index.ts +0 -3
  113. package/src/lib/interceptors/credentials.interceptor.ts +0 -16
  114. package/src/lib/interceptors/index.ts +0 -6
  115. package/src/lib/interceptors/models/error-settings.model.ts +0 -22
  116. package/src/lib/interceptors/models/index.ts +0 -2
  117. package/src/lib/interceptors/proxy-debugger.interceptor.ts +0 -46
  118. package/src/lib/interceptors/request-error.interceptor.ts +0 -65
  119. package/src/lib/interceptors/request-header.interceptor.ts +0 -53
  120. package/src/lib/models/config-http-options.model.ts +0 -42
  121. package/src/lib/models/config-local-storage-options.model.ts +0 -27
  122. package/src/lib/models/config-options.model.ts +0 -27
  123. package/src/lib/models/config-token.model.ts +0 -9
  124. package/src/lib/models/data-type.enum.ts +0 -5
  125. package/src/lib/models/database-storage.model.ts +0 -24
  126. package/src/lib/models/index.ts +0 -12
  127. package/src/lib/models/retry-options.model.ts +0 -22
  128. package/src/lib/services/database-manager-service/database.manager.service.ts +0 -262
  129. package/src/lib/services/database-manager-service/db.storage.service.ts +0 -207
  130. package/src/lib/services/database-manager-service/index.ts +0 -4
  131. package/src/lib/services/database-manager-service/models/index.ts +0 -2
  132. package/src/lib/services/database-manager-service/models/table-schema.ts +0 -33
  133. package/src/lib/services/index.ts +0 -12
  134. package/src/lib/services/local-storage-manager-service/index.ts +0 -4
  135. package/src/lib/services/local-storage-manager-service/local-storage-manager.service.spec.ts +0 -71
  136. package/src/lib/services/local-storage-manager-service/local-storage-manager.service.ts +0 -426
  137. package/src/lib/services/local-storage-manager-service/local-storage-signals-manager.service.spec.ts +0 -67
  138. package/src/lib/services/local-storage-manager-service/local-storage-signals-manager.service.ts +0 -345
  139. package/src/lib/services/local-storage-manager-service/models/global-store-options.model.ts +0 -30
  140. package/src/lib/services/local-storage-manager-service/models/index.ts +0 -6
  141. package/src/lib/services/local-storage-manager-service/models/setting-options.model.ts +0 -35
  142. package/src/lib/services/local-storage-manager-service/models/storage-data.model.ts +0 -24
  143. package/src/lib/services/local-storage-manager-service/models/storage-option.model.ts +0 -32
  144. package/src/lib/services/local-storage-manager-service/models/storage-type.enum.ts +0 -5
  145. package/src/lib/services/request-manager-services/README.md +0 -268
  146. package/src/lib/services/request-manager-services/http-manager-signals.service.ts +0 -246
  147. package/src/lib/services/request-manager-services/http-manager.service.spec.ts +0 -232
  148. package/src/lib/services/request-manager-services/http-manager.service.ts +0 -274
  149. package/src/lib/services/request-manager-services/index.ts +0 -8
  150. package/src/lib/services/request-manager-services/request-signals.service.ts +0 -214
  151. package/src/lib/services/request-manager-services/request.service.ts +0 -309
  152. package/src/lib/services/request-manager-services/rxjs-operators/countdown.ts +0 -17
  153. package/src/lib/services/request-manager-services/rxjs-operators/delay-retry.ts +0 -16
  154. package/src/lib/services/request-manager-services/rxjs-operators/index.ts +0 -4
  155. package/src/lib/services/request-manager-services/rxjs-operators/request-polling.ts +0 -35
  156. package/src/lib/services/request-manager-services/rxjs-operators/request-streaming.ts +0 -436
  157. package/src/lib/services/request-manager-state-service/http-manager-state.store.ts +0 -1321
  158. package/src/lib/services/request-manager-state-service/index.ts +0 -3
  159. package/src/lib/services/request-manager-state-service/models/api-request.model.ts +0 -61
  160. package/src/lib/services/request-manager-state-service/models/index.ts +0 -6
  161. package/src/lib/services/request-manager-state-service/models/request-options.model.ts +0 -22
  162. package/src/lib/services/request-manager-state-service/models/stream-type.enum.ts +0 -13
  163. package/src/lib/services/request-manager-state-service/models/ws-options.model.ts +0 -39
  164. package/src/lib/services/store-state-manager-service/index.ts +0 -3
  165. package/src/lib/services/store-state-manager-service/models/index.ts +0 -2
  166. package/src/lib/services/store-state-manager-service/models/state-storage-options.model.ts +0 -24
  167. package/src/lib/services/store-state-manager-service/store-state-manager.service.ts +0 -88
  168. package/src/lib/services/utils/app.service.spec.ts +0 -25
  169. package/src/lib/services/utils/app.service.ts +0 -21
  170. package/src/lib/services/utils/encryption/README.md +0 -79
  171. package/src/lib/services/utils/encryption/asymmetrical-encryption.service.ts +0 -282
  172. package/src/lib/services/utils/encryption/encryption-test.service.ts +0 -39
  173. package/src/lib/services/utils/encryption/index.ts +0 -5
  174. package/src/lib/services/utils/encryption/random.ts +0 -81
  175. package/src/lib/services/utils/encryption/symmetrical-encryption.service.ts +0 -93
  176. package/src/lib/services/utils/headers.service.spec.ts +0 -80
  177. package/src/lib/services/utils/headers.service.ts +0 -18
  178. package/src/lib/services/utils/index.ts +0 -7
  179. package/src/lib/services/utils/object-merger.service.spec.ts +0 -18
  180. package/src/lib/services/utils/object-merger.service.ts +0 -78
  181. package/src/lib/services/utils/path-query.service.spec.ts +0 -117
  182. package/src/lib/services/utils/path-query.service.ts +0 -69
  183. package/src/lib/services/utils/random-color.utils.ts +0 -83
  184. package/src/lib/services/utils/utils.service.spec.ts +0 -165
  185. package/src/lib/services/utils/utils.service.ts +0 -192
  186. package/src/lib/services/ws-manager-service/index.ts +0 -4
  187. package/src/lib/services/ws-manager-service/models/channel-info.model.ts +0 -24
  188. package/src/lib/services/ws-manager-service/models/channel-message-data.model.ts +0 -24
  189. package/src/lib/services/ws-manager-service/models/channel-message.model.ts +0 -24
  190. package/src/lib/services/ws-manager-service/models/communication-type.enum.ts +0 -5
  191. package/src/lib/services/ws-manager-service/models/index.ts +0 -5
  192. package/src/lib/services/ws-manager-service/models/ws-user.model.ts +0 -38
  193. package/src/lib/services/ws-manager-service/services/index.ts +0 -3
  194. package/src/lib/services/ws-manager-service/services/websocket.service.ts +0 -392
  195. package/src/public-api.ts +0 -14
  196. package/tsconfig.lib.json +0 -32
  197. package/tsconfig.lib.prod.json +0 -10
  198. package/tsconfig.spec.json +0 -14
@@ -1,393 +0,0 @@
1
- <div style="margin: 2rem;">
2
-
3
- <h2>
4
- HTTP Request State Manager
5
- </h2>
6
-
7
- <div [formGroup]="requestForm" style="margin-top: 2rem;">
8
- <div style="display: flex; gap: .5rem">
9
- <mat-form-field appearance="outline">
10
- <mat-label>State Data Type</mat-label>
11
- <mat-select formControlName="datatype">
12
- <mat-option value="ARRAY">Array</mat-option>
13
- <mat-option value="OBJECT">Object</mat-option>
14
- </mat-select>
15
- </mat-form-field>
16
- </div>
17
- <div style="display: flex; gap: .5rem">
18
- <mat-form-field appearance="outline">
19
- <mat-label>Adapter (Model)</mat-label>
20
- <mat-select formControlName="adapter" #adapterSelect>
21
- <mat-option>None</mat-option>
22
- @for (adapter of sampleAdaptors; track adapter) {
23
- <mat-option [value]="adapter.value">
24
- {{adapter.label}}
25
- </mat-option>
26
- }
27
- </mat-select>
28
- </mat-form-field>
29
- <mat-form-field appearance="outline">
30
- <mat-label>Mapper (Model)</mat-label>
31
- <mat-select formControlName="mapper" #mapperSelect>
32
- <mat-option>None</mat-option>
33
- @for (mapper of sampleMappers; track mapper) {
34
- <mat-option [value]="mapper.value">
35
- {{mapper.label}}
36
- </mat-option>
37
- }
38
- </mat-select>
39
- </mat-form-field>
40
- </div>
41
-
42
- @if (adapterSelect.value || mapperSelect.value) {
43
- <div style="display: flex; margin-bottom: 2rem;">
44
- <div style="flex:1" class="box">
45
- <h3>Adapter (Incoming)</h3>
46
- @if (adapterSelect.value) {
47
- <div>
48
- {{ props(adapterSelect.value) | json }}
49
- </div>
50
- } @else {
51
- No Transformation
52
- }
53
- </div>
54
- <div style="flex:1" class="box">
55
- <h3>Mapper (Outgoing)</h3>
56
- @if (mapperSelect.value) {
57
- <div>
58
- {{ props(mapperSelect.value) | json }}
59
- </div>
60
- } @else {
61
- No Transformation
62
- }
63
- </div>
64
- </div>
65
- }
66
-
67
- <div>
68
- <mat-form-field appearance="outline">
69
- <mat-label>RestPath (/ delimited)</mat-label>
70
- <input matInput placeholder="clients/list" formControlName="path">
71
- </mat-form-field>
72
- </div>
73
- <div>
74
- <div formArrayName="headers">
75
- @for (task of headers.controls; track task; let i = $index) {
76
- <div [formGroupName]="i">
77
- <div style="display: flex; gap: .5rem">
78
- <mat-form-field appearance="outline">
79
- <mat-label>Key</mat-label>
80
- <input matInput placeholder="authentication" formControlName="key">
81
- </mat-form-field>
82
- <mat-form-field appearance="outline" style="flex:1">
83
- <mat-label>Value</mat-label>
84
- <input matInput placeholder="sample" formControlName="value">
85
- </mat-form-field>
86
- <div style="margin-top: .5rem;">
87
- <button mat-icon-button (click)="removeHeader(i)">
88
- <mat-icon>close</mat-icon>
89
- </button>
90
- </div>
91
- </div>
92
- </div>
93
- }
94
- </div>
95
- <button mat-stroked-button (click)="addHeader()">Add Header</button>
96
- </div>
97
- <div style="margin-top: 2rem; display: flex; flex-direction:column; gap: 1rem;">
98
- <div>
99
- <mat-slide-toggle #failedState>Retry on Failed</mat-slide-toggle>
100
- @if (failedState.checked) {
101
- <div style="display: flex; gap: .5rem; margin-top: 1rem;" formGroupName="retry">
102
- <mat-form-field appearance="outline">
103
- <mat-label>#of Times</mat-label>
104
- <input matInput placeholder="3" formControlName="times" value="3">
105
- </mat-form-field>
106
- <mat-form-field appearance="outline">
107
- <mat-label>Delay Until Next</mat-label>
108
- <input matInput placeholder="3" formControlName="delay" value="3">
109
- </mat-form-field>
110
- </div>
111
- }
112
- </div>
113
- <div>
114
- <mat-slide-toggle #pollingState>Polling</mat-slide-toggle>
115
- @if (pollingState.checked) {
116
- <div>
117
- <mat-form-field appearance="outline" style="margin-top: 1rem">
118
- <mat-label>#of Seconds</mat-label>
119
- <input matInput placeholder="3" formControlName="polling" value="3">
120
- </mat-form-field>
121
- </div>
122
- }
123
- </div>
124
- <div>
125
- <mat-slide-toggle #DBState>Database Storage</mat-slide-toggle>
126
- @if (DBState.checked) {
127
- <div style="display: flex; gap: .5rem; margin-top: 1rem" formGroupName="database">
128
- <mat-form-field appearance="outline">
129
- <mat-label>Table Name</mat-label>
130
- <input matInput placeholder="table" formControlName="table" value="">
131
- </mat-form-field>
132
- <div>
133
- <mat-form-field appearance="outline">
134
- <mat-label>Expires In</mat-label>
135
- <mat-select formControlName="expiresIn">
136
- <mat-option value="1m">One Minute</mat-option>
137
- <mat-option value="1h">One Hour</mat-option>
138
- <mat-option value="1d">One Day</mat-option>
139
- </mat-select>
140
- </mat-form-field>
141
- </div>
142
- </div>
143
- }
144
- </div>
145
- <div style="margin-top: 1rem; display: flex;">
146
- <span style="flex:1"></span>
147
- <button mat-stroked-button (click)="onSetStateOptions()" [disabled]="!hasChanged">
148
- Set API Request Options
149
- </button>
150
- </div>
151
- <div>
152
- @if ((error$ | async); as error) {
153
- <mat-error>
154
- {{ error }}
155
- </mat-error>
156
- }
157
- </div>
158
- </div>
159
- </div>
160
-
161
- <div style="margin-bottom: 1rem; margin-top: 2rem;">
162
- @if ((isPending$ | async)) {
163
- <mat-progress-bar mode="indeterminate"
164
- ></mat-progress-bar>
165
- }
166
- @if (pollingState.checked) {
167
- <div>
168
- @if (!(isPending$ | async) && (this.countdown$ | async) || -1 > 0) {
169
- <mat-progress-bar mode="determinate"
170
- [value]="(this.countdown$ | async)"
171
- ></mat-progress-bar>
172
- }
173
- </div>
174
- }
175
-
176
- </div>
177
-
178
- @if ((GET$ | async); as data) {
179
- <div style="margin-top: 2rem">
180
- <div style="display: flex;">
181
- <h2 style="flex:1;">CURRENT STATE ({{ dataType }})</h2>
182
- </div>
183
- @if (data.length > 1) {
184
- <div>
185
- <mat-form-field appearance="outline">
186
- <mat-label>Records</mat-label>
187
- <mat-select [formControl]="selectedRecord" [disabled]="data === null && data?.length === 0">
188
- <mat-option [value]="">None</mat-option>
189
- @for (item of data; track item) {
190
- <mat-option [value]="item">
191
- {{item.name || (item.first_name) | titlecase}}
192
- </mat-option>
193
- }
194
- </mat-select>
195
- </mat-form-field>
196
- </div>
197
- }
198
- @if ((dataObservable$ | async); as dataRecord) {
199
- <div>
200
- @if ((selectedRecord$ | async); as record) {
201
- <div>
202
- {{ record | json }}
203
- </div>
204
- } @else {
205
- No Record Selected from State
206
- }
207
- </div>
208
- }
209
- <div style="margin-top: 1rem;">
210
- @if (data !== null && data?.length > 0) {
211
- <span>
212
- State contains a Total of {{ data.length }} Records
213
- </span>
214
- } @else {
215
- No Records
216
- }
217
- <div style="display: flex; gap: .5rem; text-align: end; justify-content: flex-end;">
218
- <button class="btn" mat-stroked-button (click)="onClearRecords()">Clear</button>
219
- </div>
220
- </div>
221
- </div>
222
- }
223
-
224
-
225
-
226
-
227
- <div style="margin-top: 1rem">
228
- <mat-divider></mat-divider>
229
- </div>
230
-
231
- <div style="margin-top: 2rem">
232
- <div style="display: flex;">
233
- <h2 style="flex:1">GET Request ({{ dataType }})</h2>
234
- <div>
235
- <button mat-raised-button (click)="onGetRequest()" [disabled]="hasChanged" class="btn">Request</button>
236
- </div>
237
- </div>
238
-
239
- @if ((GET_error$ | async); as get_error) {
240
- <div style="margin-top: .5rem;">
241
- <mat-error>{{ get_error }}</mat-error>
242
- </div>
243
- }
244
-
245
- <div style="margin-top: 1rem;">
246
- <!-- <div [innerHTML]="(GET$ | async) | jsonv"></div> -->
247
- @if ((GET$ | async); as getData) {
248
- <div>{{ getData | json }}</div>
249
- }
250
- </div>
251
-
252
- </div>
253
-
254
- <div style="margin-top: 2rem">
255
- <mat-divider></mat-divider>
256
- </div>
257
-
258
- <div style="margin-top: 2rem">
259
- <div style="display: flex;">
260
- <h2 style="flex:1">POST Request</h2>
261
- <div>
262
- <button mat-raised-button (click)="onCreateRequest()" [disabled]="hasChanged" class="btn">Request</button>
263
- </div>
264
- </div>
265
-
266
- @if ((POST_error$ | async); as post_error) {
267
- <div style="margin-top: .5rem;">
268
- <mat-error>{{ post_error }}</mat-error>
269
- </div>
270
- }
271
-
272
- <div style="margin-top: 1rem;">
273
- <!-- <div [innerHTML]="(POST$ | async) | jsonv"></div> -->
274
- @if ((POST$ | async); as postData) {
275
- <div>{{ postData | json }}</div>
276
- }
277
- </div>
278
-
279
- </div>
280
-
281
- <div style="margin-top: 2rem">
282
- <mat-divider></mat-divider>
283
- </div>
284
-
285
- <div style="margin-top: 2rem">
286
- <div style="display: flex;">
287
- <h2 style="flex:1">PUT Request</h2>
288
- <div>
289
- <button mat-raised-button (click)="onUpdateRequest()" [disabled]="hasChanged" class="btn">Request</button>
290
- </div>
291
- </div>
292
-
293
- @if ((PUT_error$ | async); as put_error) {
294
- <div style="margin-top: .5rem;">
295
- <mat-error>{{ put_error }}</mat-error>
296
- </div>
297
- }
298
-
299
- <div style="margin-top: 1rem;">
300
- <!-- <div [innerHTML]="(PUT$ | async) | jsonv"></div> -->
301
- @if ((PUT$ | async); as putData) {
302
- <div>{{ putData | json }}</div>
303
- }
304
- </div>
305
-
306
- </div>
307
-
308
- <div style="margin-top: 2rem">
309
- <mat-divider></mat-divider>
310
- </div>
311
-
312
- <div style="margin-top: 2rem">
313
- <div style="display: flex;">
314
- <h2 style="flex:1">DELETE Request</h2>
315
- <div>
316
- <button mat-raised-button (click)="onDeleteRequest()" [disabled]="hasChanged" class="btn">Request</button>
317
- </div>
318
- </div>
319
-
320
- @if ((DELETE_error$ | async); as delete_error) {
321
- <div style="margin-top: .5rem;">
322
- <mat-error>{{ delete_error }}</mat-error>
323
- </div>
324
- }
325
-
326
- <div style="margin-top: 1rem;">
327
- <!-- <div [innerHTML]="(DELETE$ | async) | jsonv"></div> -->
328
- @if ((DELETE$ | async); as deleteData) {
329
- <div>{{ deleteData | json }}</div>
330
- }
331
- </div>
332
-
333
- </div>
334
-
335
- <div style="margin-top: 2rem">
336
- <mat-divider></mat-divider>
337
- </div>
338
-
339
- <div style="margin-top: 2rem">
340
- <div style="display: flex;">
341
- <h2 style="flex:1">Streaming GET Request</h2>
342
- <div style="display: flex; gap: 1rem; align-items: center;">
343
- <div style="display: flex; gap: 1rem; align-items: center;">
344
- {{ streamType }}
345
- <button mat-icon-button [matMenuTriggerFor]="menu">
346
- <mat-icon>data_usage</mat-icon>
347
- </button>
348
- </div>
349
- <mat-menu #menu="matMenu">
350
- <button mat-menu-item *ngFor="let item of streamTypes" (click)="onStreamType(item.id)">{{ item.value }}</button>
351
- </mat-menu>
352
- <button mat-raised-button (click)="onStreamRequest()" class="btn" [disabled]="hasChanged">Request</button>
353
- </div>
354
- </div>
355
-
356
- @if ((STREAM_error$ | async); as stream_error) {
357
- <div style="margin-top: .5rem;">
358
- <mat-error>{{ stream_error }}</mat-error>
359
- </div>
360
- }
361
-
362
- <div style="margin-top: 1rem;">
363
- @if ((STREAM$ | async); as data) {
364
- <div class="container">
365
- <table mat-table [dataSource]="data" class="mat-elevation-z8">
366
-
367
- <!-- Dynamic columns -->
368
- <ng-container *ngFor="let column of displayedColumns" [matColumnDef]="column">
369
- <th mat-header-cell *matHeaderCellDef> {{ column | titlecase }} </th>
370
- <td mat-cell *matCellDef="let element">
371
- @if (isObject(element[column]); as objValue) {
372
- <pre style="margin: 0; font-size: 0.8em; white-space: pre-wrap;">{{ objValue | json }}</pre>
373
- } @else {
374
- {{ element[column] }}
375
- }
376
- </td>
377
- </ng-container>
378
-
379
- <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
380
- <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
381
- </table>
382
-
383
- <!-- Debug info -->
384
- <div style="margin-top: 1rem; font-size: 0.8em; color: #666;">
385
- Columns: {{ displayedColumns.join(', ') }} | Data received
386
- </div>
387
- </div>
388
- }
389
- </div>
390
-
391
- </div>
392
-
393
- </div>
@@ -1,24 +0,0 @@
1
- .btn {
2
- min-width: 120px;
3
- }
4
-
5
- .mat-mdc-row .mat-mdc-cell {
6
- border-bottom: 1px solid transparent;
7
- border-top: 1px solid transparent;
8
- cursor: pointer;
9
- }
10
-
11
- .mat-mdc-row:hover .mat-mdc-cell {
12
- border-color: currentColor;
13
- background-color: whitesmoke;
14
- }
15
-
16
- .container {
17
- height: 400px;
18
- overflow: auto;
19
- }
20
-
21
- .box {
22
- padding: 10px;
23
- border: 1px solid #ccc;
24
- }