@one-paragon/angular-utilities 0.1.17 → 0.1.19

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.
@@ -1,7 +1,8 @@
1
+ import { of } from 'rxjs';
1
2
  import { ComponentStore } from '@ngrx/component-store';
2
3
  import { HttpRequestStrategy, HttpRequestStatus } from './types';
3
- import { createFailure, createSuccess, inProgress, isErrorState, isSuccessState, notStarted } from './helpers';
4
- import { filter, map, mergeMap, pluck, startWith, switchMap, tap } from 'rxjs/operators';
4
+ import { createFailure, createSuccess, inProgress, isErrorState, isSuccessOrErrorState, isSuccessState, notStarted } from './helpers';
5
+ import { concatMap, filter, map, mergeMap, startWith, switchMap, tap } from 'rxjs/operators';
5
6
  import { mapError } from '../rxjs/mapError';
6
7
  import { defaultShareReplay } from '../rxjs/defaultShareReplay';
7
8
  import { Directive } from '@angular/core';
@@ -12,10 +13,12 @@ export class HttpRequestStateStore extends ComponentStore {
12
13
  this.req = req;
13
14
  this.options = options;
14
15
  this.flatteningStrategy = () => {
15
- if (this.options?.strategy !== HttpRequestStrategy.concurrent) {
16
- return switchMap((params) => this.createRequest(...params));
17
- }
18
- return mergeMap((params) => this.createRequest(...params));
16
+ if (this.options?.strategy === HttpRequestStrategy.concurrent)
17
+ return mergeMap((params) => this.createRequest(...params));
18
+ if (this.options?.strategy === HttpRequestStrategy.sequential)
19
+ return concatMap((params) => this.createRequest(...params));
20
+ return switchMap((params) => (params[0] instanceof CancellationToken) ?
21
+ of({ requestParams: params[0], response: { status: HttpRequestStatus.cancelled } }) : this.createRequest(...params));
19
22
  };
20
23
  this.requestEffect = this.effect((obs) => {
21
24
  return (obs).pipe(this.flatteningStrategy(), tap(state => this.setState(state)));
@@ -29,10 +32,11 @@ export class HttpRequestStateStore extends ComponentStore {
29
32
  }
30
33
  return this.requestEffect(value);
31
34
  };
32
- this.selectHttpState$ = this.state$.pipe(pluck('response'));
33
- this.selectStatus$ = this.selectHttpState$.pipe(pluck('status'));
35
+ this.selectHttpState$ = this.state$.pipe(map(a => a.response));
36
+ this.selectStatus$ = this.selectHttpState$.pipe(map(a => a.status));
34
37
  this.selectError$ = this.state$.pipe(map(r => r.response), filter(isErrorState), map(state => state.error));
35
38
  this.selectResponse$ = this.state$.pipe(map(r => r.response), filter(isSuccessState), map(state => state.body));
39
+ this.selectSuccessOrError$ = this.state$.pipe(map(r => r.response), filter(isSuccessOrErrorState), map(() => null));
36
40
  this.errorHandled = false;
37
41
  this.on = (srcObservable, func) => {
38
42
  return this.effect((src) => {
@@ -53,12 +57,25 @@ export class HttpRequestStateStore extends ComponentStore {
53
57
  this.on(this.selectResponse$, cb);
54
58
  return this;
55
59
  }
60
+ onSuccessOrError(cb) {
61
+ this.on(this.selectSuccessOrError$, cb);
62
+ return this;
63
+ }
56
64
  onSuccessWithRequest(func) {
57
65
  this.onUpdate(({ requestParams, response }) => {
58
66
  if (isSuccessState(response)) {
59
67
  func({ requestParams, body: response.body });
60
68
  }
61
69
  });
70
+ return this;
71
+ }
72
+ onErrorWithRequest(func) {
73
+ this.onUpdate(({ requestParams, response }) => {
74
+ if (isErrorState(response)) {
75
+ func({ requestParams, error: response.error });
76
+ }
77
+ });
78
+ return this;
62
79
  }
63
80
  createRequest(...params) {
64
81
  return this.req(...params).pipe(map(createSuccess), mapError(createFailure), startWith(inProgress), map(state => ({ requestParams: params, response: state })), defaultShareReplay());
@@ -75,4 +92,6 @@ HttpRequestStateStore.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0",
75
92
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: HttpRequestStateStore, decorators: [{
76
93
  type: Directive
77
94
  }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }]; } });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cFJlcXVlc3RTdGF0ZVN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL2h0dHAtcmVxdWVzdC1zdGF0ZS9IdHRwUmVxdWVzdFN0YXRlU3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBc0IsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQXlDLE1BQU0sU0FBUyxDQUFDO0FBQzVILE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMvRyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTFDLE1BQU0sT0FBTyxxQkFBK0MsU0FBUSxjQUF5QztJQUV6RyxZQUFvQixHQUFpQyxFQUFVLE9BQTZCO1FBQzFGLEtBQUssQ0FBQyxFQUFDLGFBQWEsRUFBRSxJQUFXLEVBQUUsUUFBUSxFQUFDLFVBQVUsRUFBQyxDQUFDLENBQUM7UUFEdkMsUUFBRyxHQUFILEdBQUcsQ0FBOEI7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQVVwRix1QkFBa0IsR0FBRyxHQUFHLEVBQUU7WUFDaEMsSUFBRyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsS0FBSyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUU7Z0JBQzVELE9BQU8s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LENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7a0hBdkdRLHFCQUFxQjtzR0FBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50U3RvcmUgfSBmcm9tICdAbmdyeC9jb21wb25lbnQtc3RvcmUnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdEZhY3RvcnksIEh0dHBSZXF1ZXN0U3RyYXRlZ3ksIEh0dHBSZXF1ZXN0U3RhdHVzLCBIdHRwUmVxdWVzdFN0YXRlLCBSZXF1ZXN0U3RhdGVPcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XHJcbmltcG9ydCB7IGNyZWF0ZUZhaWx1cmUsIGNyZWF0ZVN1Y2Nlc3MsIGluUHJvZ3Jlc3MsIGlzRXJyb3JTdGF0ZSwgaXNTdWNjZXNzU3RhdGUsIG5vdFN0YXJ0ZWQgfSBmcm9tICcuL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIHBsdWNrLCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgbWFwRXJyb3IgfSBmcm9tICcuLi9yeGpzL21hcEVycm9yJztcclxuaW1wb3J0IHsgZGVmYXVsdFNoYXJlUmVwbGF5IH0gZnJvbSAnLi4vcnhqcy9kZWZhdWx0U2hhcmVSZXBsYXknO1xyXG5pbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdFJlc3BvbnNlPFRQYXJhbSBleHRlbmRzIGFueVtdLFQ+IHtcclxuICByZXF1ZXN0UGFyYW1zOiBbLi4uVFBhcmFtXTtcclxuICByZXNwb25zZTogSHR0cFJlcXVlc3RTdGF0ZTxUPjtcclxufVxyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBIdHRwUmVxdWVzdFN0YXRlU3RvcmU8VFBhcmFtIGV4dGVuZHMgYW55W10sIFQ+IGV4dGVuZHMgQ29tcG9uZW50U3RvcmU8UmVxdWVzdFJlc3BvbnNlPFRQYXJhbSxUPj4ge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVxOiBIdHRwUmVxdWVzdEZhY3Rvcnk8VFBhcmFtLFQ+ICxwcml2YXRlIG9wdGlvbnM/OiBSZXF1ZXN0U3RhdGVPcHRpb25zKSB7XHJcbiAgICAgIHN1cGVyKHtyZXF1ZXN0UGFyYW1zOiBudWxsIGFzIGFueSAscmVzcG9uc2U6bm90U3RhcnRlZH0pO1xyXG4gICAgICB0aGlzLnJlcXVlc3QgPSAodGhpcy5vcHRpb25zPy5zdHJhdGVneSA9PT0gSHR0cFJlcXVlc3RTdHJhdGVneS5zaW5nbGVVc2UpID8gdGhpcy5zaW5nbGVVc2VSZXF1ZXN0IDogIHRoaXMuZmxhdHRlbmVkUmVxdWVzdDtcclxuICAgIH1cclxuXHJcbiAgICByZXNldCgpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7cmVxdWVzdFBhcmFtczpudWxsIGFzIGFueSxyZXNwb25zZTpub3RTdGFydGVkfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgZmxhdHRlbmluZ1N0cmF0ZWd5ID0gKCkgPT4ge1xyXG4gICAgICBpZih0aGlzLm9wdGlvbnM/LnN0cmF0ZWd5ICE9PSBIdHRwUmVxdWVzdFN0cmF0ZWd5LmNvbmN1cnJlbnQpIHtcclxuICAgICAgICByZXR1cm4gc3dpdGNoTWFwKCAocGFyYW1zOiBbLi4uVFBhcmFtXSkgPT4gdGhpcy5jcmVhdGVSZXF1ZXN0KC4uLnBhcmFtcykgICk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG1lcmdlTWFwKCAocGFyYW1zOiBbLi4uVFBhcmFtXSkgPT4gdGhpcy5jcmVhdGVSZXF1ZXN0KC4uLnBhcmFtcykpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVxdWVzdEVmZmVjdDogKHZhbHVlOiBbLi4uVFBhcmFtXSApID0+IFN1YnNjcmlwdGlvbiA9IHRoaXMuZWZmZWN0KChvYnM6IE9ic2VydmFibGU8Wy4uLlRQYXJhbV0+KSA9PiB7XHJcbiAgICAgIHJldHVybiAob2JzKS5waXBlKFxyXG4gICAgICAgIHRoaXMuZmxhdHRlbmluZ1N0cmF0ZWd5KCksXHJcbiAgICAgICAgdGFwPFJlcXVlc3RSZXNwb25zZTxUUGFyYW0sIFQ+PihzdGF0ZSA9PiB0aGlzLnNldFN0YXRlKHN0YXRlKSksXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBwcml2YXRlIGZsYXR0ZW5lZFJlcXVlc3QgPSAoLi4udmFsdWU6IFsuLi5UUGFyYW1dKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJlcXVlc3RFZmZlY3QodmFsdWUpIGFzIFN1YnNjcmlwdGlvbjtcclxuICAgIH1cclxuICAgIHByaXZhdGUgc2luZ2xlVXNlUmVxdWVzdCA9ICguLi52YWx1ZTogWy4uLlRQYXJhbV0pID0+IHtcclxuICAgICAgaWYgKHRoaXMuZ2V0KCkucmVzcG9uc2Uuc3RhdHVzICE9PSBIdHRwUmVxdWVzdFN0YXR1cy5ub3RTdGFydGVkKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwic3RhdGUgY2FuIG5vdCBiZSByZXVzZWQuIGVpdGhlciByZXNldCB0aGUgc3RhdGUgYnkgY2FsbGluZyByZXNldCgpIG9yIHVzZSBhIHN0YXRlIHJlcXVlc3RlciB0aGF0IGFsbG93cyBjb25jdXJyZW50IHJlcXVlc3RzLlwiKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0RWZmZWN0KHZhbHVlKSBhcyBTdWJzY3JpcHRpb247XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0SHR0cFN0YXRlJCA9IHRoaXMuc3RhdGUkLnBpcGUocGx1Y2soJ3Jlc3BvbnNlJykpO1xyXG5cclxuICAgIHNlbGVjdFN0YXR1cyQgPSB0aGlzLnNlbGVjdEh0dHBTdGF0ZSQucGlwZShwbHVjaygnc3RhdHVzJykpO1xyXG5cclxuICAgIHNlbGVjdEVycm9yJCA9IHRoaXMuc3RhdGUkLnBpcGUoXHJcbiAgICAgIG1hcChyID0+IHIucmVzcG9uc2UpLFxyXG4gICAgICBmaWx0ZXIoaXNFcnJvclN0YXRlKSxcclxuICAgICAgbWFwKCBzdGF0ZSA9PiBzdGF0ZS5lcnJvcilcclxuICAgICk7XHJcblxyXG4gICAgc2VsZWN0UmVzcG9uc2UkID0gdGhpcy5zdGF0ZSQucGlwZShcclxuICAgICAgbWFwKHIgPT4gci5yZXNwb25zZSksXHJcbiAgICAgIGZpbHRlcihpc1N1Y2Nlc3NTdGF0ZSksXHJcbiAgICAgIG1hcCggc3RhdGUgPT4gc3RhdGUuYm9keSlcclxuICAgICk7XHJcblxyXG4gICAgZXJyb3JIYW5kbGVkID0gZmFsc2U7XHJcbiAgICBvbkVycm9yKCBjYjogKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gdm9pZCkge1xyXG4gICAgICB0aGlzLmVycm9ySGFuZGxlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMub24odGhpcy5zZWxlY3RFcnJvciQsIGNiKTtcclxuICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgb25TdWNjZXNzKCBjYjogKGJvZHk6IFQpID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5vbih0aGlzLnNlbGVjdFJlc3BvbnNlJCwgY2IpO1xyXG4gICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBvblN1Y2Nlc3NXaXRoUmVxdWVzdChmdW5jOiAoc3RhdGU6IHtcclxuICAgICAgcmVxdWVzdFBhcmFtczogWy4uLlRQYXJhbV07XHJcbiAgICAgIGJvZHk6IFQ7XHJcbiAgICB9KSA9PiB2b2lkKSB7XHJcbiAgICAgIHRoaXMub25VcGRhdGUoICh7cmVxdWVzdFBhcmFtcyxyZXNwb25zZX0pID0+IHtcclxuICAgICAgICBpZihpc1N1Y2Nlc3NTdGF0ZShyZXNwb25zZSkpe1xyXG4gICAgICAgICAgZnVuYyh7cmVxdWVzdFBhcmFtcyxib2R5OiByZXNwb25zZS5ib2R5fSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZVJlcXVlc3QoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSkgOiBPYnNlcnZhYmxlPFJlcXVlc3RSZXNwb25zZTxUUGFyYW0sVD4+IHtcclxuICAgICAgcmV0dXJuICB0aGlzLnJlcSguLi5wYXJhbXMpLnBpcGUoXHJcbiAgICAgICAgbWFwKGNyZWF0ZVN1Y2Nlc3MpLFxyXG4gICAgICAgIG1hcEVycm9yKGNyZWF0ZUZhaWx1cmUpLFxyXG4gICAgICAgIHN0YXJ0V2l0aChpblByb2dyZXNzKSxcclxuICAgICAgICBtYXAoIHN0YXRlID0+ICh7cmVxdWVzdFBhcmFtczpwYXJhbXMscmVzcG9uc2U6c3RhdGV9KSksXHJcbiAgICAgICAgZGVmYXVsdFNoYXJlUmVwbGF5KClcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgb25VcGRhdGUoZnVuYzogKHN0YXRlOiB7XHJcbiAgICAgIHJlcXVlc3RQYXJhbXM6IFsuLi5UUGFyYW1dO1xyXG4gICAgICByZXNwb25zZTogSHR0cFJlcXVlc3RTdGF0ZTxUPjtcclxuICAgIH0pID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5vbih0aGlzLnN0YXRlJCxmdW5jKTtcclxuICAgIH1cclxuXHJcbiAgICBvbiA9IDxWPihzcmNPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFY+LCBmdW5jOiAob2JqOiBWKSA9PiB2b2lkKTogU3Vic2NyaXB0aW9uID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuZWZmZWN0KChzcmM6IE9ic2VydmFibGU8Vj4pID0+IHtcclxuICAgICAgICByZXR1cm4gc3JjLnBpcGUodGFwKGZ1bmMpKTtcclxuICAgICAgfSkoc3JjT2JzZXJ2YWJsZSkgYXMgU3Vic2NyaXB0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHJlcXVlc3Q6ICguLi52YWx1ZTogWy4uLlRQYXJhbV0gKSA9PiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuIl19
95
+ export class CancellationToken {
96
+ }
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cFJlcXVlc3RTdGF0ZVN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL2h0dHAtcmVxdWVzdC1zdGF0ZS9IdHRwUmVxdWVzdFN0YXRlU3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLEVBQUUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBc0IsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQW9FLE1BQU0sU0FBUyxDQUFDO0FBQ3ZKLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0SSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFTLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTFDLE1BQU0sT0FBTyxxQkFBK0MsU0FBUSxjQUF5QztJQUV6RyxZQUFvQixHQUFpQyxFQUFVLE9BQTZCO1FBQzFGLEtBQUssQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFXLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFEMUMsUUFBRyxHQUFILEdBQUcsQ0FBOEI7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQVNwRix1QkFBa0IsR0FBRyxHQUFHLEVBQUU7WUFDaEMsSUFBRyxJQUFJLENBQUMs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USxDQUFDLElBR0M7UUFDUixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQVVELFdBQVc7UUFDVCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7a0hBOUhRLHFCQUFxQjtzR0FBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVM7O0FBbUlSLE1BQU0sT0FBTyxpQkFBaUI7Q0FBRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50U3RvcmUgfSBmcm9tICdAbmdyeC9jb21wb25lbnQtc3RvcmUnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdEZhY3RvcnksIEh0dHBSZXF1ZXN0U3RyYXRlZ3ksIEh0dHBSZXF1ZXN0U3RhdHVzLCBIdHRwUmVxdWVzdFN0YXRlLCBSZXF1ZXN0U3RhdGVPcHRpb25zLCBIdHRwUmVxdWVzdFN0YXRlQ2FuY2VsbGVkIH0gZnJvbSAnLi90eXBlcyc7XHJcbmltcG9ydCB7IGNyZWF0ZUZhaWx1cmUsIGNyZWF0ZVN1Y2Nlc3MsIGluUHJvZ3Jlc3MsIGlzRXJyb3JTdGF0ZSwgaXNTdWNjZXNzT3JFcnJvclN0YXRlLCBpc1N1Y2Nlc3NTdGF0ZSwgbm90U3RhcnRlZCB9IGZyb20gJy4vaGVscGVycyc7XHJcbmltcG9ydCB7IGNvbmNhdE1hcCwgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCBwbHVjaywgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IG1hcEVycm9yIH0gZnJvbSAnLi4vcnhqcy9tYXBFcnJvcic7XHJcbmltcG9ydCB7IGRlZmF1bHRTaGFyZVJlcGxheSB9IGZyb20gJy4uL3J4anMvZGVmYXVsdFNoYXJlUmVwbGF5JztcclxuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RSZXNwb25zZTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSxUPiB7XHJcbiAgcmVxdWVzdFBhcmFtczogWy4uLlRQYXJhbV07XHJcbiAgcmVzcG9uc2U6IEh0dHBSZXF1ZXN0U3RhdGU8VD47XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgSHR0cFJlcXVlc3RTdGF0ZVN0b3JlPFRQYXJhbSBleHRlbmRzIGFueVtdLCBUPiBleHRlbmRzIENvbXBvbmVudFN0b3JlPFJlcXVlc3RSZXNwb25zZTxUUGFyYW0sVD4+IHtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogSHR0cFJlcXVlc3RGYWN0b3J5PFRQYXJhbSxUPiAscHJpdmF0ZSBvcHRpb25zPzogUmVxdWVzdFN0YXRlT3B0aW9ucykge1xyXG4gICAgICBzdXBlcih7IHJlcXVlc3RQYXJhbXM6IG51bGwgYXMgYW55ICxyZXNwb25zZTogbm90U3RhcnRlZCB9KTtcclxuICAgICAgdGhpcy5yZXF1ZXN0ID0gKHRoaXMub3B0aW9ucz8uc3RyYXRlZ3kgPT09IEh0dHBSZXF1ZXN0U3RyYXRlZ3kuc2luZ2xlVXNlKSA/IHRoaXMuc2luZ2xlVXNlUmVxdWVzdCA6ICB0aGlzLmZsYXR0ZW5lZFJlcXVlc3Q7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyByZXF1ZXN0UGFyYW1zOm51bGwgYXMgYW55LCByZXNwb25zZTogbm90U3RhcnRlZCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGZsYXR0ZW5pbmdTdHJhdGVneSA9ICgpID0+IHtcclxuICAgICAgaWYodGhpcy5vcHRpb25zPy5zdHJhdGVneSA9PT0gSHR0cFJlcXVlc3RTdHJhdGVneS5jb25jdXJyZW50KVxyXG4gICAgICAgIHJldHVybiBtZXJnZU1hcCggKHBhcmFtczogWy4uLlRQYXJhbV0pID0+IHRoaXMuY3JlYXRlUmVxdWVzdCguLi5wYXJhbXMpKTtcclxuICAgICAgaWYodGhpcy5vcHRpb25zPy5zdHJhdGVneSA9PT0gSHR0cFJlcXVlc3RTdHJhdGVneS5zZXF1ZW50aWFsKVxyXG4gICAgICAgIHJldHVybiBjb25jYXRNYXAoIChwYXJhbXM6IFsuLi5UUGFyYW1dKSA9PiB0aGlzLmNyZWF0ZVJlcXVlc3QoLi4ucGFyYW1zKSk7XHJcbiAgICAgIHJldHVybiBzd2l0Y2hNYXAoIChwYXJhbXM6IFsuLi5UUGFyYW1dKSA9PiAoKHBhcmFtc1swXSBhcyBhbnkpIGluc3RhbmNlb2YgQ2FuY2VsbGF0aW9uVG9rZW4pID9cclxuICAgICAgICBvZih7IHJlcXVlc3RQYXJhbXM6IHBhcmFtc1swXSwgcmVzcG9uc2U6IHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5jYW5jZWxsZWQgfSBhcyBIdHRwUmVxdWVzdFN0YXRlQ2FuY2VsbGVkIH0gKSA6IHRoaXMuY3JlYXRlUmVxdWVzdCguLi5wYXJhbXMpICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZXF1ZXN0RWZmZWN0OiAodmFsdWU6IFsuLi5UUGFyYW1dICkgPT4gU3Vic2NyaXB0aW9uID0gdGhpcy5lZmZlY3QoKG9iczogT2JzZXJ2YWJsZTxbLi4uVFBhcmFtXT4pID0+IHtcclxuICAgICAgcmV0dXJuIChvYnMpLnBpcGUoXHJcbiAgICAgICAgdGhpcy5mbGF0dGVuaW5nU3RyYXRlZ3koKSxcclxuICAgICAgICB0YXA8UmVxdWVzdFJlc3BvbnNlPFRQYXJhbSwgVD4+KHN0YXRlID0+IHRoaXMuc2V0U3RhdGUoc3RhdGUpKSxcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHByaXZhdGUgZmxhdHRlbmVkUmVxdWVzdCA9ICguLi52YWx1ZTogWy4uLlRQYXJhbV0pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdEVmZmVjdCh2YWx1ZSkgYXMgU3Vic2NyaXB0aW9uO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBzaW5nbGVVc2VSZXF1ZXN0ID0gKC4uLnZhbHVlOiBbLi4uVFBhcmFtXSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5nZXQoKS5yZXNwb25zZS5zdGF0dXMgIT09IEh0dHBSZXF1ZXN0U3RhdHVzLm5vdFN0YXJ0ZWQpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJzdGF0ZSBjYW4gbm90IGJlIHJldXNlZC4gZWl0aGVyIHJlc2V0IHRoZSBzdGF0ZSBieSBjYWxsaW5nIHJlc2V0KCkgb3IgdXNlIGEgc3RhdGUgcmVxdWVzdGVyIHRoYXQgYWxsb3dzIGNvbmN1cnJlbnQgcmVxdWVzdHMuXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0aGlzLnJlcXVlc3RFZmZlY3QodmFsdWUpIGFzIFN1YnNjcmlwdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RIdHRwU3RhdGUkID0gdGhpcy5zdGF0ZSQucGlwZShtYXAoYSA9PiBhLnJlc3BvbnNlKSk7XHJcblxyXG4gICAgc2VsZWN0U3RhdHVzJCA9IHRoaXMuc2VsZWN0SHR0cFN0YXRlJC5waXBlKG1hcChhID0+IGEuc3RhdHVzKSk7XHJcblxyXG4gICAgc2VsZWN0RXJyb3IkID0gdGhpcy5zdGF0ZSQucGlwZShcclxuICAgICAgbWFwKHIgPT4gci5yZXNwb25zZSksXHJcbiAgICAgIGZpbHRlcihpc0Vycm9yU3RhdGUpLFxyXG4gICAgICBtYXAoIHN0YXRlID0+IHN0YXRlLmVycm9yKVxyXG4gICAgKTtcclxuXHJcbiAgICBzZWxlY3RSZXNwb25zZSQgPSB0aGlzLnN0YXRlJC5waXBlKFxyXG4gICAgICBtYXAociA9PiByLnJlc3BvbnNlKSxcclxuICAgICAgZmlsdGVyKGlzU3VjY2Vzc1N0YXRlKSxcclxuICAgICAgbWFwKCBzdGF0ZSA9PiBzdGF0ZS5ib2R5KVxyXG4gICAgKTtcclxuICAgIHNlbGVjdFN1Y2Nlc3NPckVycm9yJCA9IHRoaXMuc3RhdGUkLnBpcGUoXHJcbiAgICAgIG1hcChyID0+IHIucmVzcG9uc2UpLFxyXG4gICAgICBmaWx0ZXIoaXNTdWNjZXNzT3JFcnJvclN0YXRlKSxcclxuICAgICAgbWFwKCAoKSA9PiBudWxsKVxyXG4gICAgKTtcclxuXHJcbiAgICBlcnJvckhhbmRsZWQgPSBmYWxzZTtcclxuICAgIG9uRXJyb3IoIGNiOiAoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB2b2lkKSB7XHJcbiAgICAgIHRoaXMuZXJyb3JIYW5kbGVkID0gdHJ1ZTtcclxuICAgICAgdGhpcy5vbih0aGlzLnNlbGVjdEVycm9yJCwgY2IpO1xyXG4gICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBvblN1Y2Nlc3MoIGNiOiAoYm9keTogVCkgPT4gdm9pZCkge1xyXG4gICAgICB0aGlzLm9uKHRoaXMuc2VsZWN0UmVzcG9uc2UkLCBjYik7XHJcbiAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIG9uU3VjY2Vzc09yRXJyb3IoY2I6ICgpID0+IHZvaWQpe1xyXG4gICAgICB0aGlzLm9uKHRoaXMuc2VsZWN0U3VjY2Vzc09yRXJyb3IkLCBjYik7XHJcbiAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIG9uU3VjY2Vzc1dpdGhSZXF1ZXN0KGZ1bmM6IChzdGF0ZToge1xyXG4gICAgICByZXF1ZXN0UGFyYW1zOiBbLi4uVFBhcmFtXTtcclxuICAgICAgYm9keTogVDtcclxuICAgIH0pID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5vblVwZGF0ZSgoeyByZXF1ZXN0UGFyYW1zLCByZXNwb25zZSB9KSA9PiB7XHJcbiAgICAgICAgaWYoaXNTdWNjZXNzU3RhdGUocmVzcG9uc2UpKXtcclxuICAgICAgICAgIGZ1bmMoe3JlcXVlc3RQYXJhbXMsYm9keTogcmVzcG9uc2UuYm9keX0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRXJyb3JXaXRoUmVxdWVzdChmdW5jOiAoc3RhdGU6IHtcclxuICAgICAgZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlO1xyXG4gICAgICByZXF1ZXN0UGFyYW1zOiBbLi4uVFBhcmFtXTtcclxuICAgIH0pID0+IHZvaWQpIHtcclxuICAgICAgdGhpcy5vblVwZGF0ZSggKHsgcmVxdWVzdFBhcmFtcywgcmVzcG9uc2UgfSkgPT4ge1xyXG4gICAgICAgIGlmKGlzRXJyb3JTdGF0ZShyZXNwb25zZSkpe1xyXG4gICAgICAgICAgZnVuYyh7IHJlcXVlc3RQYXJhbXMsIGVycm9yOiByZXNwb25zZS5lcnJvciB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZVJlcXVlc3QoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSk6IE9ic2VydmFibGU8UmVxdWVzdFJlc3BvbnNlPFRQYXJhbSxUPj4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5yZXEoLi4ucGFyYW1zKS5waXBlKFxyXG4gICAgICAgIG1hcChjcmVhdGVTdWNjZXNzKSxcclxuICAgICAgICBtYXBFcnJvcihjcmVhdGVGYWlsdXJlKSxcclxuICAgICAgICBzdGFydFdpdGgoaW5Qcm9ncmVzcyksXHJcbiAgICAgICAgbWFwKCBzdGF0ZSA9PiAoeyByZXF1ZXN0UGFyYW1zOiBwYXJhbXMsIHJlc3BvbnNlOiBzdGF0ZSB9KSksXHJcbiAgICAgICAgZGVmYXVsdFNoYXJlUmVwbGF5KClcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBvblVwZGF0ZShmdW5jOiAoc3RhdGU6IHtcclxuICAgICAgcmVxdWVzdFBhcmFtczogWy4uLlRQYXJhbV07XHJcbiAgICAgIHJlc3BvbnNlOiBIdHRwUmVxdWVzdFN0YXRlPFQ+O1xyXG4gICAgfSkgPT4gdm9pZCkge1xyXG4gICAgICB0aGlzLm9uKHRoaXMuc3RhdGUkLCBmdW5jKTtcclxuICAgIH1cclxuXHJcbiAgICBvbiA9IDxWPihzcmNPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFY+LCBmdW5jOiAob2JqOiBWKSA9PiB2b2lkKTogU3Vic2NyaXB0aW9uID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuZWZmZWN0KChzcmM6IE9ic2VydmFibGU8Vj4pID0+IHtcclxuICAgICAgICByZXR1cm4gc3JjLnBpcGUodGFwKGZ1bmMpKTtcclxuICAgICAgfSkoc3JjT2JzZXJ2YWJsZSkgYXMgU3Vic2NyaXB0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHJlcXVlc3Q6ICguLi52YWx1ZTogWy4uLlRQYXJhbV0gKSA9PiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGNsYXNzIENhbmNlbGxhdGlvblRva2VuIHt9XHJcbiJdfQ==
@@ -5,6 +5,9 @@ export function isErrorState(state) {
5
5
  export function isSuccessState(state) {
6
6
  return state.status === HttpRequestStatus.success;
7
7
  }
8
+ export function isSuccessOrErrorState(state) {
9
+ return state.status === HttpRequestStatus.success || state.status === HttpRequestStatus.fail;
10
+ }
8
11
  export function createSuccess(body) {
9
12
  return { status: HttpRequestStatus.success, body };
10
13
  }
@@ -16,4 +19,4 @@ export const inProgress = { status: HttpRequestStatus.inProgress };
16
19
  export function statusIsSuccessOrInProgress(status) {
17
20
  return [HttpRequestStatus.success, HttpRequestStatus.inProgress].includes(status);
18
21
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRILGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRLLE1BQU0sVUFBVSxZQUFZLENBQUksS0FBMEI7SUFDeEQsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBSSxLQUEwQjtJQUMxRCxPQUFPLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsT0FBTyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFJLElBQU87SUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDckQsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBVTtJQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUNuRCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUErQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztBQUcvRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQStCLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxDQUFDO0FBRS9GLE1BQU0sVUFBVSwyQkFBMkIsQ0FBRSxNQUF5QjtJQUNwRSxPQUFRLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNyRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFJlcXVlc3RTdGF0ZSwgSHR0cFJlcXVlc3RTdGF0ZUVycm9yLCBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcywgSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQsIEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzLCBIdHRwUmVxdWVzdFN0YXR1cyB9IGZyb20gXCIuL3R5cGVzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNFcnJvclN0YXRlPFQ+KHN0YXRlOiBIdHRwUmVxdWVzdFN0YXRlPFQ+KTogc3RhdGUgaXMgSHR0cFJlcXVlc3RTdGF0ZUVycm9yIHtcclxuICByZXR1cm4gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNTdWNjZXNzU3RhdGU8VD4oc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8VD4pOiBzdGF0ZSBpcyBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzczxUPiB7XHJcbiAgcmV0dXJuIHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVN1Y2Nlc3M8VD4oYm9keTogVCk6IEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzPFQ+IHtcclxuICByZXR1cm4geyBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3MsIGJvZHkgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZhaWx1cmUoZXJyb3I6IGFueSk6IEh0dHBSZXF1ZXN0U3RhdGVFcnJvciB7XHJcbiAgcmV0dXJuIHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsLCBlcnJvciB9O1xyXG59XHJcblxyXG5leHBvcnQgY29uc3Qgbm90U3RhcnRlZDogSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgPSB7IHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZCB9O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBpblByb2dyZXNzOiBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyA9IHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzIH07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RhdHVzSXNTdWNjZXNzT3JJblByb2dyZXNzKCBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzKSB7XHJcbiAgcmV0dXJuICBbSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcywgSHR0cFJlcXVlc3RTdGF0dXMuaW5Qcm9ncmVzc10uaW5jbHVkZXMoc3RhdHVzKTtcclxufSJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy9odHRwLXJlcXVlc3Qtc3RhdGUvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRILGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRLLE1BQU0sVUFBVSxZQUFZLENBQUksS0FBMEI7SUFDeEQsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBSSxLQUEwQjtJQUMxRCxPQUFPLEtBQUssQ0FBQyxNQUFNLEtBQUssaUJBQWlCLENBQUMsT0FBTyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUksS0FBMEI7SUFDakUsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztBQUMvRixDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBSSxJQUFPO0lBQ3RDLE9BQU8sRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0FBQ3JELENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLEtBQVU7SUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDbkQsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBK0IsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUM7QUFHL0YsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUErQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztBQUUvRixNQUFNLFVBQVUsMkJBQTJCLENBQUUsTUFBeUI7SUFDcEUsT0FBTyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDcEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBSZXF1ZXN0U3RhdGUsIEh0dHBSZXF1ZXN0U3RhdGVFcnJvciwgSHR0cFJlcXVlc3RTdGF0ZUluUHJvZ3Jlc3MsIEh0dHBSZXF1ZXN0U3RhdGVOb3RTdGFydGVkLCBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzcywgSHR0cFJlcXVlc3RTdGF0dXMgfSBmcm9tIFwiLi90eXBlc1wiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRXJyb3JTdGF0ZTxUPihzdGF0ZTogSHR0cFJlcXVlc3RTdGF0ZTxUPik6IHN0YXRlIGlzIEh0dHBSZXF1ZXN0U3RhdGVFcnJvciB7XHJcbiAgcmV0dXJuIHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuZmFpbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzU3VjY2Vzc1N0YXRlPFQ+KHN0YXRlOiBIdHRwUmVxdWVzdFN0YXRlPFQ+KTogc3RhdGUgaXMgSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4ge1xyXG4gIHJldHVybiBzdGF0ZS5zdGF0dXMgPT09IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3M7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1N1Y2Nlc3NPckVycm9yU3RhdGU8VD4oc3RhdGU6IEh0dHBSZXF1ZXN0U3RhdGU8VD4pOiBzdGF0ZSBpcyAoSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4gfCBIdHRwUmVxdWVzdFN0YXRlRXJyb3IpIHtcclxuICByZXR1cm4gc3RhdGUuc3RhdHVzID09PSBIdHRwUmVxdWVzdFN0YXR1cy5zdWNjZXNzIHx8IHN0YXRlLnN0YXR1cyA9PT0gSHR0cFJlcXVlc3RTdGF0dXMuZmFpbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVN1Y2Nlc3M8VD4oYm9keTogVCk6IEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzPFQ+IHtcclxuICByZXR1cm4geyBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3MsIGJvZHkgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZhaWx1cmUoZXJyb3I6IGFueSk6IEh0dHBSZXF1ZXN0U3RhdGVFcnJvciB7XHJcbiAgcmV0dXJuIHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsLCBlcnJvciB9O1xyXG59XHJcblxyXG5leHBvcnQgY29uc3Qgbm90U3RhcnRlZDogSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgPSB7IHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMubm90U3RhcnRlZCB9O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBpblByb2dyZXNzOiBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyA9IHsgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzIH07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RhdHVzSXNTdWNjZXNzT3JJblByb2dyZXNzKCBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzKSB7XHJcbiAgcmV0dXJuIFtIdHRwUmVxdWVzdFN0YXR1cy5zdWNjZXNzLCBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzXS5pbmNsdWRlcyhzdGF0dXMpO1xyXG59Il19
@@ -11,5 +11,6 @@ export var HttpRequestStrategy;
11
11
  HttpRequestStrategy[HttpRequestStrategy["concurrent"] = 1] = "concurrent";
12
12
  HttpRequestStrategy[HttpRequestStrategy["singleUse"] = 2] = "singleUse";
13
13
  HttpRequestStrategy[HttpRequestStrategy["cancelPrevious"] = 3] = "cancelPrevious";
14
+ HttpRequestStrategy[HttpRequestStrategy["sequential"] = 4] = "sequential";
14
15
  })(HttpRequestStrategy || (HttpRequestStrategy = {}));
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sQ0FBTixJQUFZLGlCQU1UO0FBTkgsV0FBWSxpQkFBaUI7SUFDekIscUVBQVUsQ0FBQTtJQUNWLHFFQUFVLENBQUE7SUFDViwrREFBTyxDQUFBO0lBQ1AseURBQUksQ0FBQTtJQUNKLG1FQUFTLENBQUE7QUFDWCxDQUFDLEVBTlMsaUJBQWlCLEtBQWpCLGlCQUFpQixRQU0xQjtBQTJCQyxNQUFNLENBQU4sSUFBWSxtQkFJWDtBQUpELFdBQVksbUJBQW1CO0lBQzdCLHlFQUFjLENBQUE7SUFDZCx1RUFBUyxDQUFBO0lBQ1QsaUZBQWMsQ0FBQTtBQUNoQixDQUFDLEVBSlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUk5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdGF0dXMge1xyXG4gICAgbm90U3RhcnRlZCxcclxuICAgIGluUHJvZ3Jlc3MsXHJcbiAgICBzdWNjZXNzLFxyXG4gICAgZmFpbCxcclxuICAgIGNhbmNlbGxlZCxcclxuICB9XHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGVOb3RTdGFydGVkID0ge1xyXG4gICAgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5ub3RTdGFydGVkXHJcbiAgfVxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlSW5Qcm9ncmVzcyA9IHtcclxuICAgIHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMuaW5Qcm9ncmVzc1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4gPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLnN1Y2Nlc3M7XHJcbiAgICBib2R5OiBUO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RTdGF0ZUVycm9yID0ge1xyXG4gICAgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5mYWlsO1xyXG4gICAgZXJyb3I6IGFueTtcclxuICB9XHJcblxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlPFQgPSBhbnk+ID1cclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVOb3RTdGFydGVkIHxcclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVJblByb2dyZXNzIHxcclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVTdWNjZXNzPFQ+IHxcclxuICAgIEh0dHBSZXF1ZXN0U3RhdGVFcnJvciA7XHJcblxyXG4gICAgZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdHJhdGVneSB7XHJcbiAgICAgIGNvbmN1cnJlbnQgPSAxLFxyXG4gICAgICBzaW5nbGVVc2UsXHJcbiAgICAgIGNhbmNlbFByZXZpb3VzLFxyXG4gICAgfVxyXG4gICAgZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0U3RhdGVPcHRpb25zICB7XHJcbiAgICAgIHN0cmF0ZWd5PzogSHR0cFJlcXVlc3RTdHJhdGVneVxyXG4gICAgfVxyXG5cclxuICAgIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0RmFjdG9yeTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSwgVD4gPSAoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSkgPT4gT2JzZXJ2YWJsZTxUPlxyXG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvaHR0cC1yZXF1ZXN0LXN0YXRlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sQ0FBTixJQUFZLGlCQU1UO0FBTkgsV0FBWSxpQkFBaUI7SUFDekIscUVBQVUsQ0FBQTtJQUNWLHFFQUFVLENBQUE7SUFDViwrREFBTyxDQUFBO0lBQ1AseURBQUksQ0FBQTtJQUNKLG1FQUFTLENBQUE7QUFDWCxDQUFDLEVBTlMsaUJBQWlCLEtBQWpCLGlCQUFpQixRQU0xQjtBQWdDSCxNQUFNLENBQU4sSUFBWSxtQkFLWDtBQUxELFdBQVksbUJBQW1CO0lBQzdCLHlFQUFjLENBQUE7SUFDZCx1RUFBYSxDQUFBO0lBQ2IsaUZBQWtCLENBQUE7SUFDbEIseUVBQWMsQ0FBQTtBQUNoQixDQUFDLEVBTFcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUs5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuZXhwb3J0IGVudW0gSHR0cFJlcXVlc3RTdGF0dXMge1xyXG4gICAgbm90U3RhcnRlZCxcclxuICAgIGluUHJvZ3Jlc3MsXHJcbiAgICBzdWNjZXNzLFxyXG4gICAgZmFpbCxcclxuICAgIGNhbmNlbGxlZCxcclxuICB9XHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGVDYW5jZWxsZWQgPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLmNhbmNlbGxlZFxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLm5vdFN0YXJ0ZWRcclxuICB9XHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGVJblByb2dyZXNzID0ge1xyXG4gICAgc3RhdHVzOiBIdHRwUmVxdWVzdFN0YXR1cy5pblByb2dyZXNzXHJcbiAgfVxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlU3VjY2VzczxUPiA9IHtcclxuICAgIHN0YXR1czogSHR0cFJlcXVlc3RTdGF0dXMuc3VjY2VzcztcclxuICAgIGJvZHk6IFQ7XHJcbiAgfVxyXG5cclxuICBleHBvcnQgdHlwZSBIdHRwUmVxdWVzdFN0YXRlRXJyb3IgPSB7XHJcbiAgICBzdGF0dXM6IEh0dHBSZXF1ZXN0U3RhdHVzLmZhaWw7XHJcbiAgICBlcnJvcjogYW55O1xyXG4gIH1cclxuXHJcblxyXG4gIGV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0U3RhdGU8VCA9IGFueT4gPVxyXG4gIEh0dHBSZXF1ZXN0U3RhdGVDYW5jZWxsZWQgfFxyXG4gICAgSHR0cFJlcXVlc3RTdGF0ZU5vdFN0YXJ0ZWQgfFxyXG4gICAgSHR0cFJlcXVlc3RTdGF0ZUluUHJvZ3Jlc3MgfFxyXG4gICAgSHR0cFJlcXVlc3RTdGF0ZVN1Y2Nlc3M8VD4gfFxyXG4gICAgSHR0cFJlcXVlc3RTdGF0ZUVycm9yIDtcclxuXHJcbmV4cG9ydCBlbnVtIEh0dHBSZXF1ZXN0U3RyYXRlZ3kge1xyXG4gIGNvbmN1cnJlbnQgPSAxLFxyXG4gIHNpbmdsZVVzZSA9IDIsXHJcbiAgY2FuY2VsUHJldmlvdXMgPSAzLFxyXG4gIHNlcXVlbnRpYWwgPSA0LFxyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdFN0YXRlT3B0aW9ucyB7XHJcbiAgc3RyYXRlZ3k/OiBIdHRwUmVxdWVzdFN0cmF0ZWd5XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0RmFjdG9yeTxUUGFyYW0gZXh0ZW5kcyBhbnlbXSwgVD4gPSAoLi4ucGFyYW1zOiBbLi4uVFBhcmFtXSkgPT4gT2JzZXJ2YWJsZTxUPlxyXG4iXX0=
@@ -21,8 +21,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImpor
21
21
  * Turns underscores into spaces
22
22
  */
23
23
  export function spaceCase(value) {
24
- return value?.replace(/([a-z0-9])([A-Z])|([a-zA-Z0-9])([A-Z])(?=[a-z])|_/g, '$1 $2')
25
- // uppercase the first character
26
- .replace(/^./, str => str.toUpperCase());
24
+ const phrase = value?.replace(/([a-z0-9])([A-Z])|([a-zA-Z0-9])([A-Z])(?=[a-z])|_/g, '$1$3 $2$4');
25
+ // uppercase the first character of every word
26
+ return phrase?.replace(/(^| )(\w)/g, x => x.toUpperCase());
27
27
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhY2UtY2FzZS5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy91dGlsaXRpZXMvcGlwZXMvc3BhY2UtY2FzZS5waXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBUSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzs7MEdBSFUsYUFBYTt3R0FBYixhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFDOztBQU96Qjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsS0FBYTtJQUNyQyxPQUFPLEtBQUssRUFBRSxPQUFPLENBQUMsb0RBQW9ELEVBQUUsT0FBTyxDQUFDO1FBQ3BGLGdDQUFnQztTQUMvQixPQUFPLENBQUMsSUFBSSxFQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFFLENBQUM7QUFDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtuYW1lOiAnc3BhY2VDYXNlJ30pXHJcbmV4cG9ydCBjbGFzcyBTcGFjZUNhc2VQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuICBzcGFjZUNhc2UodmFsdWUpO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHMgYSBzcGFjZSBiZWZvcmUgdXBwZXJjYXNlIGxldHRlcnMgdGhhdCBlaXRoZXJcclxuICogMS4gZm9sbG93cyBhIGxvd2VyY2FzZSBsZXR0ZXIgb3IgZGlnaXRcclxuICogMi4gb3IgcHJlY2VkZXMgYSBsb3dlcmNhc2UgbGV0dGVyIGFuZCBmb2xsb3dzIGFuIGFscGhhLW51bWVyaWMgY2hhcmFjdGVyXHJcbiAqIFxyXG4gKiBVcHBlcmNhc2VzIHRoZSBmaXJzdCBkaWdpdFxyXG4gKiBcclxuICogVHVybnMgdW5kZXJzY29yZXMgaW50byBzcGFjZXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcGFjZUNhc2UodmFsdWU6IHN0cmluZyl7XHJcbiAgcmV0dXJuIHZhbHVlPy5yZXBsYWNlKC8oW2EtejAtOV0pKFtBLVpdKXwoW2EtekEtWjAtOV0pKFtBLVpdKSg/PVthLXpdKXxfL2csICckMSAkMicpXHJcbiAgLy8gdXBwZXJjYXNlIHRoZSBmaXJzdCBjaGFyYWN0ZXJcclxuICAucmVwbGFjZSgvXi4vLCAgc3RyID0+IHN0ci50b1VwcGVyQ2FzZSgpICk7XHJcbn1cclxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhY2UtY2FzZS5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy91dGlsaXRpZXMvcGlwZXMvc3BhY2UtY2FzZS5waXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBUSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzs7MEdBSFUsYUFBYTt3R0FBYixhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFDOztBQU96Qjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsS0FBYTtJQUNyQyxNQUFNLE1BQU0sR0FBRyxLQUFLLEVBQUUsT0FBTyxDQUFDLG9EQUFvRCxFQUFFLFdBQVcsQ0FBQyxDQUFBO0lBQ2hHLDhDQUE4QztJQUM5QyxPQUFPLE1BQU0sRUFBRSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtuYW1lOiAnc3BhY2VDYXNlJ30pXHJcbmV4cG9ydCBjbGFzcyBTcGFjZUNhc2VQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuICBzcGFjZUNhc2UodmFsdWUpO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHMgYSBzcGFjZSBiZWZvcmUgdXBwZXJjYXNlIGxldHRlcnMgdGhhdCBlaXRoZXJcclxuICogMS4gZm9sbG93cyBhIGxvd2VyY2FzZSBsZXR0ZXIgb3IgZGlnaXRcclxuICogMi4gb3IgcHJlY2VkZXMgYSBsb3dlcmNhc2UgbGV0dGVyIGFuZCBmb2xsb3dzIGFuIGFscGhhLW51bWVyaWMgY2hhcmFjdGVyXHJcbiAqIFxyXG4gKiBVcHBlcmNhc2VzIHRoZSBmaXJzdCBkaWdpdFxyXG4gKiBcclxuICogVHVybnMgdW5kZXJzY29yZXMgaW50byBzcGFjZXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcGFjZUNhc2UodmFsdWU6IHN0cmluZyl7XHJcbiAgY29uc3QgcGhyYXNlID0gdmFsdWU/LnJlcGxhY2UoLyhbYS16MC05XSkoW0EtWl0pfChbYS16QS1aMC05XSkoW0EtWl0pKD89W2Etel0pfF8vZywgJyQxJDMgJDIkNCcpXHJcbiAgLy8gdXBwZXJjYXNlIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgZXZlcnkgd29yZFxyXG4gIHJldHVybiBwaHJhc2U/LnJlcGxhY2UoLyhefCApKFxcdykvZywgeCA9PiB4LnRvVXBwZXJDYXNlKCkpO1xyXG59XHJcbiJdfQ==
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Directive, Input, NgModule, Injectable, InjectionToken, Pipe, HostListener, Component, EventEmitter, Output, ContentChildren, Inject, ChangeDetectionStrategy, ViewChild, Injector, ElementRef, Optional } from '@angular/core';
3
- import { shareReplay, switchAll, map, filter, tap, catchError, startWith, switchMap, mergeMap, pluck, last, takeUntil, distinctUntilKeyChanged, delay as delay$1, distinct, first as first$1, distinctUntilChanged, withLatestFrom, mergeAll, scan as scan$1 } from 'rxjs/operators';
3
+ import { shareReplay, switchAll, map, filter, tap, catchError, startWith, switchMap, mergeMap, concatMap, last, takeUntil, distinctUntilKeyChanged, delay as delay$1, distinct, first as first$1, distinctUntilChanged, withLatestFrom, mergeAll, scan as scan$1 } from 'rxjs/operators';
4
4
  import * as i3$3 from 'rxjs';
5
- import { Subject, isObservable, of, ReplaySubject, filter as filter$1, first, map as map$1, Observable, combineLatest, Subscription, startWith as startWith$1, pairwise, concatMap, merge, delay, switchMap as switchMap$1, scan, fromEvent, asyncScheduler, tap as tap$1, BehaviorSubject, takeUntil as takeUntil$1, from } from 'rxjs';
5
+ import { Subject, isObservable, of, ReplaySubject, filter as filter$1, first, map as map$1, Observable, combineLatest, Subscription, startWith as startWith$1, pairwise, concatMap as concatMap$1, merge, delay, switchMap as switchMap$1, scan, fromEvent, asyncScheduler, tap as tap$1, BehaviorSubject, takeUntil as takeUntil$1, from } from 'rxjs';
6
6
  import { ComponentStore } from '@ngrx/component-store';
7
7
  import * as i4$4 from '@angular/material/table';
8
8
  import { MatColumnDef, MatTableDataSource, MatTable, MatTableModule, MatRowDef } from '@angular/material/table';
@@ -86,6 +86,7 @@ var HttpRequestStrategy;
86
86
  HttpRequestStrategy[HttpRequestStrategy["concurrent"] = 1] = "concurrent";
87
87
  HttpRequestStrategy[HttpRequestStrategy["singleUse"] = 2] = "singleUse";
88
88
  HttpRequestStrategy[HttpRequestStrategy["cancelPrevious"] = 3] = "cancelPrevious";
89
+ HttpRequestStrategy[HttpRequestStrategy["sequential"] = 4] = "sequential";
89
90
  })(HttpRequestStrategy || (HttpRequestStrategy = {}));
90
91
 
91
92
  function isErrorState(state) {
@@ -94,6 +95,9 @@ function isErrorState(state) {
94
95
  function isSuccessState(state) {
95
96
  return state.status === HttpRequestStatus.success;
96
97
  }
98
+ function isSuccessOrErrorState(state) {
99
+ return state.status === HttpRequestStatus.success || state.status === HttpRequestStatus.fail;
100
+ }
97
101
  function createSuccess(body) {
98
102
  return { status: HttpRequestStatus.success, body };
99
103
  }
@@ -396,11 +400,13 @@ class HttpRequestStateStore extends ComponentStore {
396
400
  this.req = req;
397
401
  this.options = options;
398
402
  this.flatteningStrategy = () => {
399
- var _a;
400
- if (((_a = this.options) === null || _a === void 0 ? void 0 : _a.strategy) !== HttpRequestStrategy.concurrent) {
401
- return switchMap((params) => this.createRequest(...params));
402
- }
403
- return mergeMap((params) => this.createRequest(...params));
403
+ var _a, _b;
404
+ if (((_a = this.options) === null || _a === void 0 ? void 0 : _a.strategy) === HttpRequestStrategy.concurrent)
405
+ return mergeMap((params) => this.createRequest(...params));
406
+ if (((_b = this.options) === null || _b === void 0 ? void 0 : _b.strategy) === HttpRequestStrategy.sequential)
407
+ return concatMap((params) => this.createRequest(...params));
408
+ return switchMap((params) => (params[0] instanceof CancellationToken) ?
409
+ of({ requestParams: params[0], response: { status: HttpRequestStatus.cancelled } }) : this.createRequest(...params));
404
410
  };
405
411
  this.requestEffect = this.effect((obs) => {
406
412
  return (obs).pipe(this.flatteningStrategy(), tap(state => this.setState(state)));
@@ -414,10 +420,11 @@ class HttpRequestStateStore extends ComponentStore {
414
420
  }
415
421
  return this.requestEffect(value);
416
422
  };
417
- this.selectHttpState$ = this.state$.pipe(pluck('response'));
418
- this.selectStatus$ = this.selectHttpState$.pipe(pluck('status'));
423
+ this.selectHttpState$ = this.state$.pipe(map(a => a.response));
424
+ this.selectStatus$ = this.selectHttpState$.pipe(map(a => a.status));
419
425
  this.selectError$ = this.state$.pipe(map(r => r.response), filter(isErrorState), map(state => state.error));
420
426
  this.selectResponse$ = this.state$.pipe(map(r => r.response), filter(isSuccessState), map(state => state.body));
427
+ this.selectSuccessOrError$ = this.state$.pipe(map(r => r.response), filter(isSuccessOrErrorState), map(() => null));
421
428
  this.errorHandled = false;
422
429
  this.on = (srcObservable, func) => {
423
430
  return this.effect((src) => {
@@ -438,12 +445,25 @@ class HttpRequestStateStore extends ComponentStore {
438
445
  this.on(this.selectResponse$, cb);
439
446
  return this;
440
447
  }
448
+ onSuccessOrError(cb) {
449
+ this.on(this.selectSuccessOrError$, cb);
450
+ return this;
451
+ }
441
452
  onSuccessWithRequest(func) {
442
453
  this.onUpdate(({ requestParams, response }) => {
443
454
  if (isSuccessState(response)) {
444
455
  func({ requestParams, body: response.body });
445
456
  }
446
457
  });
458
+ return this;
459
+ }
460
+ onErrorWithRequest(func) {
461
+ this.onUpdate(({ requestParams, response }) => {
462
+ if (isErrorState(response)) {
463
+ func({ requestParams, error: response.error });
464
+ }
465
+ });
466
+ return this;
447
467
  }
448
468
  createRequest(...params) {
449
469
  return this.req(...params).pipe(map(createSuccess), mapError(createFailure), startWith(inProgress), map(state => ({ requestParams: params, response: state })), defaultShareReplay());
@@ -459,7 +479,9 @@ HttpRequestStateStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", ve
459
479
  HttpRequestStateStore.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.1", type: HttpRequestStateStore, usesInheritance: true, ngImport: i0 });
460
480
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: HttpRequestStateStore, decorators: [{
461
481
  type: Directive
462
- }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }]; } });
482
+ }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }]; } });
483
+ class CancellationToken {
484
+ }
463
485
 
464
486
  class HttpRequestStateFactory {
465
487
  constructor() {
@@ -597,7 +619,7 @@ function notNull() {
597
619
  }
598
620
  function delayOn(predicate, delayTime) {
599
621
  return (src) => {
600
- return src.pipe(concatMap(r => {
622
+ return src.pipe(concatMap$1(r => {
601
623
  if (predicate(r)) {
602
624
  return merge(of({ r }), of(null).pipe(delay(delayTime))).pipe(notNull(), map$1(d => d.r));
603
625
  }
@@ -1028,7 +1050,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImpor
1028
1050
  * Turns underscores into spaces
1029
1051
  */
1030
1052
  function spaceCase(value) {
1031
- return value === null || value === void 0 ? void 0 : value.replace(/([a-z0-9])([A-Z])|([a-zA-Z0-9])([A-Z])(?=[a-z])|_/g, '$1 $2').replace(/^./, str => str.toUpperCase());
1053
+ const phrase = value === null || value === void 0 ? void 0 : value.replace(/([a-z0-9])([A-Z])|([a-zA-Z0-9])([A-Z])(?=[a-z])|_/g, '$1$3 $2$4');
1054
+ // uppercase the first character of every word
1055
+ return phrase === null || phrase === void 0 ? void 0 : phrase.replace(/(^| )(\w)/g, x => x.toUpperCase());
1032
1056
  }
1033
1057
 
1034
1058
  class ConditionalClassesDirective {
@@ -4668,5 +4692,5 @@ const shallowEquals = (first, second) => {
4668
4692
  * Generated bundle index. Do not edit.
4669
4693
  */
4670
4694
 
4671
- export { ActionStateSpinnerComponent, ActionStateUiModule, ActionStatus, AppStatusState, ArrayStyle, AutoFocusDirective, ClickEmitterDirective, ClickSubjectDirective, ConditionalClassesDirective, CreateTableBuilder, CustomCellDirective, DateFilterComponent, DialogDirective, DialogService, DialogWrapper, FieldType, FilterChipsComponent, FilterComponent, FilterType, FunctionPipe, GenColDisplayerComponent, GenFilterDisplayerComponent, GeneralTableSettings, GenericTableComponent, GroupByListComponent, HttpErrorStateDirective, HttpInProgressStateDirective, HttpNotStartedStateDirective, HttpRequestModule, HttpRequestStateDirective, HttpRequestStateFactory, HttpRequestStateStore, HttpRequestStatus, HttpRequestStrategy, HttpSuccessStateDirective, MatButtonToggleFilterDirective, MatCheckboxTbFilterDirective, MatOptionTbFilterDirective, MatRadioButtonTbFilterDirective, MatSlideToggleGroupDirective, MatSlideToggleTbFilterDirective, MatTableObservableDataSource, MultiSortDirective, NgrxExtModule, NotPersisitedTableSettings, PaginatorComponent, PesrsistedTableSettings, PhoneNumberPipe, PreventEnterDirective, ResizeColumnDirective, SortDirection, SpaceCasePipe, StopPropagationDirective, StylerDirective, Subjectifier, TableBuilder, TableBuilderModule, TableColumnHeaderSettings, TableContainerComponent, TableCustomFilterDirective, TableCustomFilterDirectiveBase, TableFilterDirective, TableFilterStringContainsDirective, TableWrapperDirective, TableWrapperFooterSettings, TableWrapperHeaderSettings, Target, TbSelectedFilterDirective, TrimWhitespaceDirective, UtilitiesModule, actionStatusReducer, chainRequest, combineArrays, createActionableSelector, createFailure, createSuccess, defaultFilter, defaultShareReplay, delayOn, filterArray, getRequestorBody, getRequestorStatus, getStatusState, httpRequest, httpRequestor, inProgress, initialState, isErrorState, isSuccessState, mapArray, mapError, notNull, notStarted, onWait, onceWhen, previousAndCurrent, selectAll, selectEntities, selectEntity, selectIds, selectTotal, serverStatusTypes, setUpStoreFactory, skipOneWhen, spaceCase, statusAdapter, statusIsSuccessOrInProgress, switchOff, tapError, tapSuccess };
4695
+ export { ActionStateSpinnerComponent, ActionStateUiModule, ActionStatus, AppStatusState, ArrayStyle, AutoFocusDirective, CancellationToken, ClickEmitterDirective, ClickSubjectDirective, ConditionalClassesDirective, CreateTableBuilder, CustomCellDirective, DateFilterComponent, DialogDirective, DialogService, DialogWrapper, FieldType, FilterChipsComponent, FilterComponent, FilterType, FunctionPipe, GenColDisplayerComponent, GenFilterDisplayerComponent, GeneralTableSettings, GenericTableComponent, GroupByListComponent, HttpErrorStateDirective, HttpInProgressStateDirective, HttpNotStartedStateDirective, HttpRequestModule, HttpRequestStateDirective, HttpRequestStateFactory, HttpRequestStateStore, HttpRequestStatus, HttpRequestStrategy, HttpSuccessStateDirective, MatButtonToggleFilterDirective, MatCheckboxTbFilterDirective, MatOptionTbFilterDirective, MatRadioButtonTbFilterDirective, MatSlideToggleGroupDirective, MatSlideToggleTbFilterDirective, MatTableObservableDataSource, MultiSortDirective, NgrxExtModule, NotPersisitedTableSettings, PaginatorComponent, PesrsistedTableSettings, PhoneNumberPipe, PreventEnterDirective, ResizeColumnDirective, SortDirection, SpaceCasePipe, StopPropagationDirective, StylerDirective, Subjectifier, TableBuilder, TableBuilderModule, TableColumnHeaderSettings, TableContainerComponent, TableCustomFilterDirective, TableCustomFilterDirectiveBase, TableFilterDirective, TableFilterStringContainsDirective, TableWrapperDirective, TableWrapperFooterSettings, TableWrapperHeaderSettings, Target, TbSelectedFilterDirective, TrimWhitespaceDirective, UtilitiesModule, actionStatusReducer, chainRequest, combineArrays, createActionableSelector, createFailure, createSuccess, defaultFilter, defaultShareReplay, delayOn, filterArray, getRequestorBody, getRequestorStatus, getStatusState, httpRequest, httpRequestor, inProgress, initialState, isErrorState, isSuccessOrErrorState, isSuccessState, mapArray, mapError, notNull, notStarted, onWait, onceWhen, previousAndCurrent, selectAll, selectEntities, selectEntity, selectIds, selectTotal, serverStatusTypes, setUpStoreFactory, skipOneWhen, spaceCase, statusAdapter, statusIsSuccessOrInProgress, switchOff, tapError, tapSuccess };
4672
4696
  //# sourceMappingURL=one-paragon-angular-utilities.mjs.map