@dereekb/rxjs 2.1.0 → 3.0.0

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 (95) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/package.json +9 -7
  3. package/src/index.js +1 -1
  4. package/src/index.js.map +1 -1
  5. package/src/lib/filter/filter.map.d.ts +4 -3
  6. package/src/lib/filter/filter.map.js.map +1 -1
  7. package/src/lib/filter/filter.source.d.ts +4 -4
  8. package/src/lib/filter/filter.source.js.map +1 -1
  9. package/src/lib/filter/index.js +4 -4
  10. package/src/lib/filter/index.js.map +1 -1
  11. package/src/lib/index.d.ts +1 -0
  12. package/src/lib/index.js +8 -7
  13. package/src/lib/index.js.map +1 -1
  14. package/src/lib/iterator/index.d.ts +1 -0
  15. package/src/lib/iterator/index.js +7 -6
  16. package/src/lib/iterator/index.js.map +1 -1
  17. package/src/lib/iterator/iteration.accumulator.d.ts +8 -4
  18. package/src/lib/iterator/iteration.accumulator.js +18 -21
  19. package/src/lib/iterator/iteration.accumulator.js.map +1 -1
  20. package/src/lib/iterator/iteration.accumulator.rxjs.d.ts +7 -3
  21. package/src/lib/iterator/iteration.accumulator.rxjs.js +21 -10
  22. package/src/lib/iterator/iteration.accumulator.rxjs.js.map +1 -1
  23. package/src/lib/iterator/iteration.d.ts +7 -3
  24. package/src/lib/iterator/iteration.mapped.page.d.ts +3 -2
  25. package/src/lib/iterator/iteration.mapped.page.js.map +1 -1
  26. package/src/lib/iterator/iteration.next.d.ts +8 -3
  27. package/src/lib/iterator/iteration.next.js +19 -6
  28. package/src/lib/iterator/iteration.next.js.map +1 -1
  29. package/src/lib/iterator/iterator.page.d.ts +22 -6
  30. package/src/lib/iterator/iterator.page.js +17 -5
  31. package/src/lib/iterator/iterator.page.js.map +1 -1
  32. package/src/lib/loading/index.js +8 -8
  33. package/src/lib/loading/index.js.map +1 -1
  34. package/src/lib/loading/loading.state.d.ts +4 -1
  35. package/src/lib/loading/loading.state.js +12 -2
  36. package/src/lib/loading/loading.state.js.map +1 -1
  37. package/src/lib/lock.d.ts +13 -7
  38. package/src/lib/lock.js +38 -14
  39. package/src/lib/lock.js.map +1 -1
  40. package/src/lib/object.js +2 -2
  41. package/src/lib/object.js.map +1 -1
  42. package/src/lib/rxjs/array.d.ts +17 -0
  43. package/src/lib/rxjs/array.js +23 -9
  44. package/src/lib/rxjs/array.js.map +1 -1
  45. package/src/lib/rxjs/boolean.d.ts +13 -1
  46. package/src/lib/rxjs/boolean.js +31 -1
  47. package/src/lib/rxjs/boolean.js.map +1 -1
  48. package/src/lib/rxjs/delta.d.ts +32 -0
  49. package/src/lib/rxjs/delta.js +51 -0
  50. package/src/lib/rxjs/delta.js.map +1 -0
  51. package/src/lib/rxjs/factory.d.ts +31 -0
  52. package/src/lib/rxjs/factory.js +21 -0
  53. package/src/lib/rxjs/factory.js.map +1 -0
  54. package/src/lib/rxjs/getter.d.ts +4 -4
  55. package/src/lib/rxjs/getter.js +3 -3
  56. package/src/lib/rxjs/getter.js.map +1 -1
  57. package/src/lib/rxjs/index.d.ts +9 -1
  58. package/src/lib/rxjs/index.js +16 -8
  59. package/src/lib/rxjs/index.js.map +1 -1
  60. package/src/lib/rxjs/lifecycle.d.ts +18 -0
  61. package/src/lib/rxjs/lifecycle.js +55 -0
  62. package/src/lib/rxjs/lifecycle.js.map +1 -0
  63. package/src/lib/rxjs/map.d.ts +10 -0
  64. package/src/lib/rxjs/map.js +17 -0
  65. package/src/lib/rxjs/map.js.map +1 -0
  66. package/src/lib/rxjs/number.d.ts +16 -1
  67. package/src/lib/rxjs/number.js +15 -3
  68. package/src/lib/rxjs/number.js.map +1 -1
  69. package/src/lib/rxjs/rxjs.async.d.ts +57 -0
  70. package/src/lib/rxjs/rxjs.async.js +69 -0
  71. package/src/lib/rxjs/rxjs.async.js.map +1 -0
  72. package/src/lib/rxjs/rxjs.d.ts +10 -2
  73. package/src/lib/rxjs/rxjs.js +17 -16
  74. package/src/lib/rxjs/rxjs.js.map +1 -1
  75. package/src/lib/rxjs/rxjs.map.d.ts +9 -0
  76. package/src/lib/rxjs/rxjs.map.js +26 -0
  77. package/src/lib/rxjs/rxjs.map.js.map +1 -0
  78. package/src/lib/rxjs/set.d.ts +4 -0
  79. package/src/lib/rxjs/set.js +14 -0
  80. package/src/lib/rxjs/set.js.map +1 -0
  81. package/src/lib/rxjs/use.d.ts +7 -0
  82. package/src/lib/rxjs/use.js +14 -0
  83. package/src/lib/rxjs/use.js.map +1 -0
  84. package/src/lib/rxjs/value.d.ts +21 -3
  85. package/src/lib/rxjs/value.js +33 -2
  86. package/src/lib/rxjs/value.js.map +1 -1
  87. package/src/lib/work/index.d.ts +2 -0
  88. package/src/lib/work/index.js +6 -0
  89. package/src/lib/work/index.js.map +1 -0
  90. package/src/lib/work/work.factory.d.ts +35 -0
  91. package/src/lib/work/work.factory.js +43 -0
  92. package/src/lib/work/work.factory.js.map +1 -0
  93. package/src/lib/work/work.instance.d.ts +60 -0
  94. package/src/lib/work/work.instance.js +129 -0
  95. package/src/lib/work/work.instance.js.map +1 -0
@@ -2,6 +2,16 @@ import { PageLoadingState } from "../loading";
2
2
  import { Destroyable, Filter, Maybe, PageNumber, Page } from "@dereekb/util";
3
3
  import { Observable } from "rxjs";
4
4
  import { ItemIteratorNextRequest, PageItemIteration } from './iteration';
5
+ export interface ItemPageLimit {
6
+ /**
7
+ * Maximum number of pages to load.
8
+ *
9
+ * This value should be defined in most cases.
10
+ *
11
+ * If not defined, the will be no ending iteration.
12
+ */
13
+ maxPageLoadLimit?: Maybe<number>;
14
+ }
5
15
  export interface ItemPageIteratorRequest<V, F, C extends ItemPageIterationConfig<F> = ItemPageIterationConfig<F>> extends Page {
6
16
  /**
7
17
  * The base iterator config.
@@ -50,11 +60,11 @@ export interface ItemPageIteratorDelegate<V, F, C extends ItemPageIterationConfi
50
60
  /**
51
61
  * Returns an observable of items given the input request.
52
62
  *
53
- * If the input goes out of bounds, the result should be
63
+ * If the input goes out of bounds, the result should be an empty array.
54
64
  */
55
65
  loadItemsForPage: (request: ItemPageIteratorRequest<V, F, C>) => Observable<ItemPageIteratorResult<V>>;
56
66
  }
57
- export interface ItemPageIterationConfig<F = any> extends Filter<F> {
67
+ export interface ItemPageIterationConfig<F = any> extends Filter<F>, ItemPageLimit {
58
68
  }
59
69
  /**
60
70
  * Default number of pages that can be loaded.
@@ -65,8 +75,9 @@ export declare const DEFAULT_ITEM_PAGE_ITERATOR_MAX = 100;
65
75
  */
66
76
  export declare class ItemPageIterator<V, F, C extends ItemPageIterationConfig<F> = any> {
67
77
  readonly delegate: ItemPageIteratorDelegate<V, F, C>;
68
- private _maxPageLoadLimit;
69
- get maxPageLoadLimit(): number;
78
+ protected _maxPageLoadLimit: Maybe<number>;
79
+ get maxPageLoadLimit(): Maybe<number>;
80
+ set maxPageLoadLimit(maxPageLoadLimit: Maybe<number>);
70
81
  constructor(delegate: ItemPageIteratorDelegate<V, F, C>);
71
82
  /**
72
83
  * Creates a new instance based on the input config.
@@ -83,6 +94,7 @@ export interface ItemPageIterationInstanceState<V> {
83
94
  n: number;
84
95
  current: Maybe<PageLoadingState<ItemPageIteratorResult<V>>>;
85
96
  latestFinished: Maybe<PageLoadingState<ItemPageIteratorResult<V>>>;
97
+ firstSuccessful: Maybe<PageLoadingState<ItemPageIteratorResult<V>>>;
86
98
  lastSuccessful: Maybe<PageLoadingState<ItemPageIteratorResult<V>>>;
87
99
  }
88
100
  /**
@@ -132,12 +144,16 @@ export declare class ItemPageIterationInstance<V, F, C extends ItemPageIteration
132
144
  private readonly _lastFinishedPageResultState$;
133
145
  private readonly _lastFinishedPageResult$;
134
146
  private readonly _lastFinishedPageResultItem$;
147
+ /**
148
+ * The first page results that has finished loading without an error.
149
+ */
150
+ readonly firstSuccessfulPageResults$: Observable<PageLoadingState<ItemPageIteratorResult<V>>>;
135
151
  /**
136
152
  * The latest page results that has finished loading without an error.
137
153
  */
138
154
  readonly latestSuccessfulPageResults$: Observable<PageLoadingState<ItemPageIteratorResult<V>>>;
139
- get maxPageLoadLimit(): number;
140
- set maxPageLoadLimit(maxPageLoadLimit: number);
155
+ get maxPageLoadLimit(): Maybe<number>;
156
+ set maxPageLoadLimit(maxPageLoadLimit: Maybe<number>);
141
157
  nextPage(request?: ItemIteratorNextRequest): Promise<number>;
142
158
  readonly currentState$: Observable<PageLoadingState<V>>;
143
159
  readonly latestLoadedPage$: Observable<PageNumber>;
@@ -18,11 +18,13 @@ exports.DEFAULT_ITEM_PAGE_ITERATOR_MAX = 100;
18
18
  class ItemPageIterator {
19
19
  constructor(delegate) {
20
20
  this.delegate = delegate;
21
- this._maxPageLoadLimit = exports.DEFAULT_ITEM_PAGE_ITERATOR_MAX;
22
21
  }
23
22
  get maxPageLoadLimit() {
24
23
  return this._maxPageLoadLimit;
25
24
  }
25
+ set maxPageLoadLimit(maxPageLoadLimit) {
26
+ this._maxPageLoadLimit = maxPageLoadLimit;
27
+ }
26
28
  /**
27
29
  * Creates a new instance based on the input config.
28
30
  *
@@ -39,13 +41,14 @@ exports.ItemPageIterator = ItemPageIterator;
39
41
  */
40
42
  class ItemPageIterationInstance {
41
43
  constructor(iterator, config) {
44
+ var _a;
42
45
  this.iterator = iterator;
43
46
  this.config = config;
44
47
  /**
45
48
  * Used for triggering loading of more content.
46
49
  */
47
50
  this._next = new rxjs_2.BehaviorSubject({ n: 0 });
48
- this._maxPageLoadLimit = new rxjs_2.BehaviorSubject(this.iterator.maxPageLoadLimit);
51
+ this._maxPageLoadLimit = new rxjs_2.BehaviorSubject((_a = this.config.maxPageLoadLimit) !== null && _a !== void 0 ? _a : this.iterator.maxPageLoadLimit);
49
52
  // MARK: State
50
53
  this.state$ = this._next.pipe((0, operators_1.delay)(0), (0, rxjs_2.exhaustMap)((request) => (0, rxjs_2.combineLatest)([this.hasNextAndCanLoadMore$, this._lastFinishedPageResultState$]).pipe((0, rxjs_2.first)(), (0, operators_1.map)(([hasNextAndCanLoadMore, prevResult]) => [itemPageIteratorShouldLoadNextPage(request, hasNextAndCanLoadMore, prevResult), prevResult]), (0, operators_1.mergeMap)(([shouldLoadNextPage, prevResult]) => {
51
54
  if (shouldLoadNextPage) {
@@ -82,6 +85,7 @@ class ItemPageIterationInstance {
82
85
  n,
83
86
  current: curr,
84
87
  latestFinished: acc.latestFinished,
88
+ firstSuccessful: acc.firstSuccessful,
85
89
  lastSuccessful: acc.lastSuccessful
86
90
  };
87
91
  // If it was a replay of the previous result, change nothing.
@@ -90,6 +94,9 @@ class ItemPageIterationInstance {
90
94
  next.latestFinished = curr;
91
95
  if (!(0, loading_1.loadingStateHasError)(curr)) {
92
96
  next.lastSuccessful = curr;
97
+ if (!next.firstSuccessful) {
98
+ next.firstSuccessful = curr;
99
+ }
93
100
  }
94
101
  }
95
102
  }
@@ -97,7 +104,7 @@ class ItemPageIterationInstance {
97
104
  }, {
98
105
  n: -1,
99
106
  current: { page: util_1.FIRST_PAGE },
100
- latestFinished: undefined, lastSuccessful: undefined
107
+ latestFinished: undefined, firstSuccessful: undefined, lastSuccessful: undefined
101
108
  }), (0, rxjs_2.shareReplay)(1));
102
109
  /**
103
110
  * Used to track when a next() value changes, or the current changes.
@@ -135,6 +142,10 @@ class ItemPageIterationInstance {
135
142
  this._lastFinishedPageResultState$ = this.latestPageResultState$.pipe((0, operators_1.startWith)(undefined), (0, rxjs_2.shareReplay)(1));
136
143
  this._lastFinishedPageResult$ = this._lastFinishedPageResultState$.pipe((0, operators_1.map)(x => x === null || x === void 0 ? void 0 : x.value));
137
144
  this._lastFinishedPageResultItem$ = this._lastFinishedPageResult$.pipe((0, operators_1.map)(x => x === null || x === void 0 ? void 0 : x.value));
145
+ /**
146
+ * The first page results that has finished loading without an error.
147
+ */
148
+ this.firstSuccessfulPageResults$ = this.state$.pipe((0, operators_1.map)(x => x.firstSuccessful), (0, rxjs_1.filterMaybe)(), (0, rxjs_2.shareReplay)(1));
138
149
  /**
139
150
  * The latest page results that has finished loading without an error.
140
151
  */
@@ -150,7 +161,7 @@ class ItemPageIterationInstance {
150
161
  /**
151
162
  * Whether or not the successfulPageResultsCount has passed the maxPageLoadLimit
152
163
  */
153
- this.canLoadMore$ = (0, rxjs_2.combineLatest)([this._maxPageLoadLimit, this.numberOfPagesLoaded$.pipe((0, operators_1.startWith)(0))]).pipe((0, operators_1.map)(([maxPageLoadLimit, numberOfPagesLoaded]) => numberOfPagesLoaded < maxPageLoadLimit), (0, operators_1.distinctUntilChanged)(), (0, rxjs_2.shareReplay)(1));
164
+ this.canLoadMore$ = (0, rxjs_2.combineLatest)([this._maxPageLoadLimit, this.numberOfPagesLoaded$.pipe((0, operators_1.startWith)(0))]).pipe((0, operators_1.map)(([maxPageLoadLimit, numberOfPagesLoaded]) => (0, util_1.isMaybeNot)(maxPageLoadLimit) ? true : (numberOfPagesLoaded < maxPageLoadLimit)), (0, operators_1.distinctUntilChanged)(), (0, rxjs_2.shareReplay)(1));
154
165
  /**
155
166
  * Observable of whether or not there are items that have finished loading, and if this iterator can load more.
156
167
  */
@@ -163,7 +174,8 @@ class ItemPageIterationInstance {
163
174
  return this._maxPageLoadLimit.value;
164
175
  }
165
176
  set maxPageLoadLimit(maxPageLoadLimit) {
166
- this._maxPageLoadLimit.next(Math.max(0, Math.ceil(maxPageLoadLimit)));
177
+ const limit = (0, util_1.isMaybeNot)(maxPageLoadLimit) ? undefined : Math.max(0, Math.ceil(maxPageLoadLimit));
178
+ this._maxPageLoadLimit.next(limit);
167
179
  }
168
180
  nextPage(request = {}) {
169
181
  return new Promise((resolve, reject) => {
@@ -1 +1 @@
1
- {"version":3,"file":"iterator.page.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/iterator/iterator.page.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iterator.page.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/iterator/iterator.page.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- (0, tslib_1.__exportStar)(require("./loading.context.state"), exports);
5
- (0, tslib_1.__exportStar)(require("./loading.context.state.list"), exports);
6
- (0, tslib_1.__exportStar)(require("./loading.context.state.value"), exports);
7
- (0, tslib_1.__exportStar)(require("./loading.context.simple"), exports);
8
- (0, tslib_1.__exportStar)(require("./loading.context"), exports);
9
- (0, tslib_1.__exportStar)(require("./loading.context.value"), exports);
10
- (0, tslib_1.__exportStar)(require("./loading.state.list"), exports);
11
- (0, tslib_1.__exportStar)(require("./loading.state"), exports);
4
+ tslib_1.__exportStar(require("./loading.context.state"), exports);
5
+ tslib_1.__exportStar(require("./loading.context.state.list"), exports);
6
+ tslib_1.__exportStar(require("./loading.context.state.value"), exports);
7
+ tslib_1.__exportStar(require("./loading.context.simple"), exports);
8
+ tslib_1.__exportStar(require("./loading.context"), exports);
9
+ tslib_1.__exportStar(require("./loading.context.value"), exports);
10
+ tslib_1.__exportStar(require("./loading.state.list"), exports);
11
+ tslib_1.__exportStar(require("./loading.state"), exports);
12
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/index.ts"],"names":[],"mappings":";;;AAAA,uEAAwC;AACxC,4EAA6C;AAC7C,6EAA8C;AAC9C,wEAAyC;AACzC,iEAAkC;AAClC,uEAAwC;AACxC,oEAAqC;AACrC,+DAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,uEAA6C;AAC7C,wEAA8C;AAC9C,mEAAyC;AACzC,4DAAkC;AAClC,kEAAwC;AACxC,+DAAqC;AACrC,0DAAgC"}
@@ -137,7 +137,7 @@ export interface MapMultipleLoadingStateResultsConfiguration<T, X, L extends Loa
137
137
  mapState?: (input: L) => R;
138
138
  }
139
139
  export declare function mapMultipleLoadingStateResults<T, X, L extends LoadingState<X>[], R extends LoadingState<T>>(input: L, config: MapMultipleLoadingStateResultsConfiguration<T, X, L, R>): Maybe<R>;
140
- export declare type MapLoadingStateFn<A, B, L extends LoadingState<A> = LoadingState<A>, O extends LoadingState<B> = LoadingState<B>> = (input: L) => O;
140
+ export declare type MapLoadingStateFn<A, B, L extends LoadingState<A> = LoadingState<A>, O extends LoadingState<B> = LoadingState<B>> = (input: L, value?: B) => O;
141
141
  export declare type MapLoadingStateValuesFn<A, B, L extends LoadingState<A> = LoadingState<A>> = (input: A, state: L) => B;
142
142
  export interface MapLoadingStateResultsConfiguration<A, B, L extends LoadingState<A> = LoadingState<A>, O extends LoadingState<B> = LoadingState<B>> {
143
143
  mapValue?: MapLoadingStateValuesFn<A, B, L>;
@@ -146,3 +146,6 @@ export interface MapLoadingStateResultsConfiguration<A, B, L extends LoadingStat
146
146
  export declare function mapLoadingStateResults<A, B, L extends LoadingState<A> = LoadingState<A>, O extends LoadingState<B> = LoadingState<B>>(input: L, config: MapLoadingStateResultsConfiguration<A, B, L, O>): O;
147
147
  export declare function mapLoadingStateResults<A, B, L extends PageLoadingState<A> = PageLoadingState<A>, O extends PageLoadingState<B> = PageLoadingState<B>>(input: L, config: MapLoadingStateResultsConfiguration<A, B, L, O>): O;
148
148
  export declare function mapLoadingStateResults<A, B, L extends Partial<PageLoadingState<A>> = Partial<PageLoadingState<A>>, O extends Partial<PageLoadingState<B>> = Partial<PageLoadingState<B>>>(input: L, config: MapLoadingStateResultsConfiguration<A, B, L, O>): O;
149
+ export declare type MapLoadingStateValueFunction<O, I, L extends LoadingState<I> = LoadingState<I>> = (state: L) => Maybe<O>;
150
+ export declare type MapLoadingStateValueMapFunction<O, I, L extends LoadingState<I> = LoadingState<I>> = ((item: I) => Maybe<O>) | ((item: I, state: L) => Maybe<O>);
151
+ export declare function mapLoadingStateValueFunction<O, I, L extends LoadingState<I> = LoadingState<I>>(mapFn: MapLoadingStateValueMapFunction<O, I, L>): MapLoadingStateValueFunction<O, I, L>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapLoadingStateResults = exports.mapMultipleLoadingStateResults = exports.updatedStateForSetError = exports.updatedStateForSetValue = exports.updatedStateForSetLoading = exports.mergeLoadingStates = exports.combineLoadingStates = exports.loadingStateFromObs = exports.loadingStateHasError = exports.loadingStateHasValue = exports.loadingStateHasFinishedLoading = exports.isErrorLoadingState = exports.isSuccessLoadingState = exports.loadingStateIsLoading = exports.loadingStateIsIdle = exports.allLoadingStatesHaveFinishedLoading = exports.anyLoadingStatesIsLoading = exports.errorPageResult = exports.errorResult = exports.successPageResult = exports.successResult = exports.beginLoading = exports.idleLoadingState = exports.loadingStateType = exports.LoadingStateType = void 0;
3
+ exports.mapLoadingStateValueFunction = exports.mapLoadingStateResults = exports.mapMultipleLoadingStateResults = exports.updatedStateForSetError = exports.updatedStateForSetValue = exports.updatedStateForSetLoading = exports.mergeLoadingStates = exports.combineLoadingStates = exports.loadingStateFromObs = exports.loadingStateHasError = exports.loadingStateHasValue = exports.loadingStateHasFinishedLoading = exports.isErrorLoadingState = exports.isSuccessLoadingState = exports.loadingStateIsLoading = exports.loadingStateIsIdle = exports.allLoadingStatesHaveFinishedLoading = exports.anyLoadingStatesIsLoading = exports.errorPageResult = exports.errorResult = exports.successPageResult = exports.successResult = exports.beginLoading = exports.idleLoadingState = exports.loadingStateType = exports.LoadingStateType = void 0;
4
4
  const rxjs_1 = require("rxjs");
5
5
  const operators_1 = require("rxjs/operators");
6
6
  const util_1 = require("@dereekb/util");
@@ -281,9 +281,19 @@ function mapLoadingStateResults(input, config) {
281
281
  result = Object.assign(Object.assign({}, input), { value });
282
282
  }
283
283
  else {
284
- result = mapState(input);
284
+ result = mapState(input, value);
285
285
  }
286
286
  return result;
287
287
  }
288
288
  exports.mapLoadingStateResults = mapLoadingStateResults;
289
+ function mapLoadingStateValueFunction(mapFn) {
290
+ return (state) => {
291
+ let result;
292
+ if (state.value != null) {
293
+ result = mapFn(state.value, state);
294
+ }
295
+ return result;
296
+ };
297
+ }
298
+ exports.mapLoadingStateValueFunction = mapLoadingStateValueFunction;
289
299
  //# sourceMappingURL=loading.state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loading.state.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/loading.state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loading.state.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/loading.state.ts"],"names":[],"mappings":"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"}
package/src/lib/lock.d.ts CHANGED
@@ -1,11 +1,14 @@
1
+ import { ObservableOrValue } from './rxjs/getter';
1
2
  import { Observable, Subscription } from 'rxjs';
3
+ import { Destroyable, Maybe } from '@dereekb/util';
2
4
  export declare type LockKey = string;
3
5
  export declare type OnLockSetUnlockedFunction = (unlocked: boolean) => void;
6
+ export declare type RemoveLockFunction = () => void;
4
7
  export interface OnLockSetUnlockedConfig {
5
8
  lockSet: LockSet;
6
9
  fn: OnLockSetUnlockedFunction;
7
- timeout?: number;
8
- delayTime?: number;
10
+ timeout?: Maybe<number>;
11
+ delayTime?: Maybe<number>;
9
12
  }
10
13
  export interface SetLockedConfig {
11
14
  /**
@@ -23,15 +26,16 @@ export declare const DEFAULT_LOCK_SET_TIME_LOCK_KEY = "timelock";
23
26
  /**
24
27
  * Executes the input function when the lockSet is set unlocked, or the timeout is reached.
25
28
  */
26
- export declare function onLockSetNextUnlock({ lockSet, fn, timeout, delayTime }: OnLockSetUnlockedConfig): Subscription;
29
+ export declare function onLockSetNextUnlock({ lockSet, fn, timeout: timeoutTime, delayTime }: OnLockSetUnlockedConfig): Subscription;
27
30
  /**
28
31
  * Used for preventing an action until all keys are removed.
29
32
  *
30
33
  * Added Observables do not need to be strictly removed; empty observables are counted as unlocked.
31
34
  */
32
- export declare class LockSet {
35
+ export declare class LockSet implements Destroyable {
33
36
  private static LOCK_SET_CHILD_INDEX_STEPPER;
34
37
  private _locks;
38
+ private _parentSub;
35
39
  readonly locks$: Observable<Map<string, Observable<boolean>>>;
36
40
  /**
37
41
  * isLocked$ is true if any observable is emitting true.
@@ -44,13 +48,15 @@ export declare class LockSet {
44
48
  setLocked(key: LockKey, config: boolean, duration?: number): void;
45
49
  lockForSeconds(seconds: number): void;
46
50
  lockForTime(milliseconds: number, key?: LockKey): void;
47
- addLock(key: LockKey, obs: Observable<boolean>): void;
51
+ addLock(key: LockKey, obs: Observable<boolean>): RemoveLockFunction;
52
+ private _removeObsForKey;
48
53
  removeLock(key: LockKey): void;
49
54
  onNextUnlock(config: OnLockSetUnlockedFunction | Omit<OnLockSetUnlockedConfig, 'lockSet'>, delayTime?: number): Subscription;
55
+ setParentLockSet(parent: ObservableOrValue<Maybe<LockSet>>): void;
50
56
  /**
51
- * Convenience function for watching a child lockset's locked state.
57
+ * Convenience function for watching a child lockset's locked state and propogating it upward.
52
58
  */
53
- addChildLockSet(lockSet: LockSet, key?: LockKey): void;
59
+ addChildLockSet(lockSet: LockSet, key?: LockKey): RemoveLockFunction;
54
60
  destroyOnNextUnlock(config?: OnLockSetUnlockedFunction | Omit<OnLockSetUnlockedConfig, 'lockSet'>, delayTime?: number): void;
55
61
  destroy(): void;
56
62
  }
package/src/lib/lock.js CHANGED
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LockSet = exports.onLockSetNextUnlock = exports.DEFAULT_LOCK_SET_TIME_LOCK_KEY = void 0;
4
- const operators_1 = require("rxjs/operators");
5
- const rxjs_1 = require("rxjs");
4
+ const rxjs_1 = require("@dereekb/rxjs");
6
5
  const rxjs_2 = require("rxjs");
7
6
  const rxjs_3 = require("./rxjs");
8
7
  const util_1 = require("@dereekb/util");
9
8
  const ms_1 = require("ms");
9
+ const subscription_1 = require("./subscription");
10
10
  exports.DEFAULT_LOCK_SET_TIME_LOCK_KEY = 'timelock';
11
11
  /**
12
12
  * Executes the input function when the lockSet is set unlocked, or the timeout is reached.
13
13
  */
14
- function onLockSetNextUnlock({ lockSet, fn, timeout = (0, ms_1.default)('50s'), delayTime }) {
15
- return lockSet.isUnlocked$.pipe((0, operators_1.filter)((x) => x), (0, operators_1.delay)(delayTime !== null && delayTime !== void 0 ? delayTime : 0), (0, operators_1.timeoutWith)(timeout, (0, rxjs_1.of)(false).pipe((0, operators_1.tap)(() => console.warn('LockSet time out. Potential issue detected.')))), (0, operators_1.first)()).subscribe(fn);
14
+ function onLockSetNextUnlock({ lockSet, fn, timeout: timeoutTime = (0, ms_1.default)('50s'), delayTime }) {
15
+ return lockSet.isUnlocked$.pipe((0, rxjs_2.filter)((x) => x), (0, rxjs_2.delay)(delayTime !== null && delayTime !== void 0 ? delayTime : 0), (0, rxjs_2.timeout)({
16
+ first: timeoutTime,
17
+ with: () => (0, rxjs_2.of)(false).pipe((0, rxjs_2.tap)(() => console.warn('LockSet time out. Potential issue detected.')))
18
+ }), (0, rxjs_2.first)()).subscribe(fn);
16
19
  }
17
20
  exports.onLockSetNextUnlock = onLockSetNextUnlock;
18
21
  /**
@@ -23,13 +26,14 @@ exports.onLockSetNextUnlock = onLockSetNextUnlock;
23
26
  class LockSet {
24
27
  constructor() {
25
28
  this._locks = new rxjs_2.BehaviorSubject(new Map());
29
+ this._parentSub = new subscription_1.SubscriptionObject();
26
30
  this.locks$ = this._locks.asObservable();
27
31
  /**
28
32
  * isLocked$ is true if any observable is emitting true.
29
33
  */
30
- this.isLocked$ = this.locks$.pipe((0, operators_1.switchMap)((0, rxjs_3.combineLatestFromMapValuesObsFn)((x) => x)), (0, operators_1.map)((0, util_1.reduceBooleansWithOrFn)(false)), // Empty map is unlocked.
31
- (0, operators_1.shareReplay)(1));
32
- this.isUnlocked$ = this.isLocked$.pipe((0, operators_1.map)(x => !x));
34
+ this.isLocked$ = this.locks$.pipe((0, rxjs_2.switchMap)((0, rxjs_3.combineLatestFromMapValuesObsFn)((x) => x)), (0, rxjs_2.map)((0, util_1.reduceBooleansWithOrFn)(false)), // Empty map is unlocked.
35
+ (0, rxjs_2.shareReplay)(1));
36
+ this.isUnlocked$ = this.isLocked$.pipe((0, rxjs_2.map)(x => !x));
33
37
  }
34
38
  get locks() {
35
39
  return this._locks.value;
@@ -47,9 +51,9 @@ class LockSet {
47
51
  };
48
52
  }
49
53
  if (lockedConfig.locked) {
50
- let obs = (0, rxjs_1.of)(true);
54
+ let obs = (0, rxjs_2.of)(true);
51
55
  if (lockedConfig.duration) {
52
- obs = obs.pipe((0, operators_1.timeoutWith)(lockedConfig.duration, (0, rxjs_1.of)(false)));
56
+ obs = obs.pipe((0, rxjs_2.timeout)({ first: lockedConfig.duration, with: () => (0, rxjs_2.of)(false) }));
53
57
  }
54
58
  this.addLock(key, obs);
55
59
  }
@@ -61,12 +65,20 @@ class LockSet {
61
65
  this.lockForTime(seconds * 1000);
62
66
  }
63
67
  lockForTime(milliseconds, key) {
64
- this.addLock(key !== null && key !== void 0 ? key : exports.DEFAULT_LOCK_SET_TIME_LOCK_KEY, (0, rxjs_1.of)(false).pipe((0, operators_1.delay)(milliseconds), (0, operators_1.startWith)(true)));
68
+ this.addLock(key !== null && key !== void 0 ? key : exports.DEFAULT_LOCK_SET_TIME_LOCK_KEY, (0, rxjs_2.of)(false).pipe((0, rxjs_2.delay)(milliseconds), (0, rxjs_2.startWith)(true)));
65
69
  }
66
70
  addLock(key, obs) {
67
- obs = obs.pipe((0, operators_1.defaultIfEmpty)(false)); // empty observables count as unlocked.
71
+ obs = obs.pipe((0, rxjs_2.defaultIfEmpty)(false));
72
+ let removeLock = () => this._removeObsForKey(obs, key);
68
73
  this._locks.value.set(key, obs);
69
- this._locks.next(this.locks);
74
+ this._locks.next(this._locks.value);
75
+ return removeLock;
76
+ }
77
+ _removeObsForKey(obs, key) {
78
+ const current = this._locks.value.get(key);
79
+ if (current && obs === current) {
80
+ this.removeLock(key);
81
+ }
70
82
  }
71
83
  removeLock(key) {
72
84
  if (this._locks.value.delete(key)) {
@@ -76,11 +88,22 @@ class LockSet {
76
88
  onNextUnlock(config, delayTime) {
77
89
  return onLockSetNextUnlock(Object.assign({ lockSet: this, delayTime }, ((typeof config === 'function') ? { fn: config } : config)));
78
90
  }
91
+ setParentLockSet(parent) {
92
+ this._parentSub.subscription = (0, rxjs_3.preventComplete)((0, rxjs_1.asObservable)(parent)).pipe((0, rxjs_2.map)((parentLockSet) => {
93
+ let removeFn;
94
+ if (parentLockSet) {
95
+ removeFn = parentLockSet.addChildLockSet(this);
96
+ }
97
+ return removeFn;
98
+ }), (0, rxjs_3.cleanup)((removeLockSet) => {
99
+ removeLockSet === null || removeLockSet === void 0 ? void 0 : removeLockSet();
100
+ })).subscribe();
101
+ }
79
102
  /**
80
- * Convenience function for watching a child lockset's locked state.
103
+ * Convenience function for watching a child lockset's locked state and propogating it upward.
81
104
  */
82
105
  addChildLockSet(lockSet, key = `${LockSet.LOCK_SET_CHILD_INDEX_STEPPER++}`) {
83
- this.addLock(key, lockSet.isLocked$);
106
+ return this.addLock(key, lockSet.isLocked$);
84
107
  }
85
108
  // Cleanup
86
109
  destroyOnNextUnlock(config, delayTime) {
@@ -102,6 +125,7 @@ class LockSet {
102
125
  }
103
126
  destroy() {
104
127
  this._locks.complete();
128
+ this._parentSub.destroy();
105
129
  }
106
130
  }
107
131
  exports.LockSet = LockSet;
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../../packages/rxjs/src/lib/lock.ts"],"names":[],"mappings":";;;AAAA,8CAAgI;AAChI,+BAAoD;AACpD,+BAAuC;AACvC,iCAAyD;AACzD,wCAAuD;AACvD,2BAAoB;AA0BP,QAAA,8BAA8B,GAAG,UAAU,CAAC;AAEzD;;GAEG;AACH,SAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,GAAG,IAAA,YAAE,EAAC,KAAK,CAAC,EAAE,SAAS,EAA2B;IAC1G,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,CAC7B,IAAA,kBAAM,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAChB,IAAA,iBAAK,EAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,CAAC,CAAC,EACrB,IAAA,uBAAW,EAAC,OAAO,EAAE,IAAA,SAAE,EAAC,KAAK,CAAC,CAAC,IAAI,CACjC,IAAA,eAAG,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CACvE,CAAC,EACF,IAAA,iBAAK,GAAE,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AAC3B,CAAC;AARD,kDAQC;AAED;;;;GAIG;AACH,MAAa,OAAO;IAmBlB;QAfQ,WAAM,GAAG,IAAI,sBAAe,CAAoC,IAAI,GAAG,EAAE,CAAC,CAAC;QAE1E,WAAM,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAE7C;;WAEG;QACM,cAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CACnC,IAAA,qBAAS,EAAC,IAAA,sCAA+B,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EACpD,IAAA,eAAG,EAAC,IAAA,6BAAsB,EAAC,KAAK,CAAC,CAAC,EAAE,yBAAyB;QAC7D,IAAA,uBAAW,EAAC,CAAC,CAAC,CACf,CAAC;QAEO,gBAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAA,eAAG,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,CAAC;IAEjB,IAAY,KAAK;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAID,SAAS,CAAC,GAAY,EAAE,MAAkC,EAAE,QAAiB;;QAC3E,IAAI,YAA6B,CAAC;QAElC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,YAAY,GAAG,MAAyB,CAAC;SAC1C;aAAM;YACL,YAAY,GAAG;gBACb,MAAM,EAAE,MAAA,MAAiB,mCAAI,IAAI;gBACjC,QAAQ;aACT,CAAC;SACH;QAED,IAAI,YAAY,CAAC,MAAM,EAAE;YACvB,IAAI,GAAG,GAAG,IAAA,SAAE,EAAC,IAAI,CAAC,CAAC;YAEnB,IAAI,YAAY,CAAC,QAAQ,EAAE;gBACzB,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,IAAA,uBAAW,EAAC,YAAY,CAAC,QAAQ,EAAE,IAAA,SAAE,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC/D;YAED,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SACxB;aAAM;YACL,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACtB;IACH,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,WAAW,CAAC,YAAoB,EAAE,GAAa;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,sCAA8B,EAAE,IAAA,SAAE,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAK,EAAC,YAAY,CAAC,EAAE,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED,OAAO,CAAC,GAAY,EAAE,GAAwB;QAC5C,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,IAAA,0BAAc,EAAmB,KAAK,CAAC,CAAC,CAAC,CAAE,uCAAuC;QACjG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,UAAU,CAAC,GAAY;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,YAAY,CAAC,MAA4E,EAAE,SAAkB;QAC3G,OAAO,mBAAmB,iBACxB,OAAO,EAAE,IAAI,EACb,SAAS,IACN,CAAC,CAAC,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAC7D,CAAC;IACL,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAAgB,EAAE,MAAe,GAAG,OAAO,CAAC,4BAA4B,EAAE,EAAE;QAC1F,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,UAAU;IACV,mBAAmB,CAAC,MAA6E,EAAE,SAAkB;QACnH,IAAI,EAAyC,CAAC;QAC9C,IAAI,WAAgB,CAAC;QAErB,IAAI,MAAM,EAAE;YACV,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;gBAChC,EAAE,GAAG,MAAM,CAAC;aACb;iBAAM;gBACL,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;gBACf,WAAW,GAAG,MAAM,CAAC;aACtB;SACF;QAED,IAAI,CAAC,YAAY,iCACZ,WAAW,KACd,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACf,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAG,QAAQ,CAAC,CAAC;gBAEf,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;YACxC,CAAC,EACD,SAAS,IACT,CAAC;IACL,CAAC;IAED,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;;AAlHH,0BAoHC;AAlHgB,oCAA4B,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../../packages/rxjs/src/lib/lock.ts"],"names":[],"mappings":"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"}
package/src/lib/object.js CHANGED
@@ -8,7 +8,7 @@ const operators_1 = require("rxjs/operators");
8
8
  * Equivalent to distinctUntilChanged() using isEqualObject()
9
9
  */
10
10
  function distinctUntilObjectValuesChanged() {
11
- return (0, operators_1.distinctUntilChanged)((a, b) => (0, util_1.areEqualObjectValues)(a, b));
11
+ return (0, operators_1.distinctUntilChanged)((a, b) => (0, util_1.areEqualPOJOValues)(a, b));
12
12
  }
13
13
  exports.distinctUntilObjectValuesChanged = distinctUntilObjectValuesChanged;
14
14
  function filterIfObjectValuesUnchanged(input) {
@@ -18,7 +18,7 @@ function filterIfObjectValuesUnchanged(input) {
18
18
  });
19
19
  }
20
20
  else {
21
- return (0, operators_1.filter)((inputObject) => !(0, util_1.areEqualObjectValues)(input, inputObject));
21
+ return (0, operators_1.filter)((inputObject) => !(0, util_1.areEqualPOJOValues)(input, inputObject));
22
22
  }
23
23
  }
24
24
  exports.filterIfObjectValuesUnchanged = filterIfObjectValuesUnchanged;
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../../packages/rxjs/src/lib/object.ts"],"names":[],"mappings":";;;AAAA,wCAAqD;AACrD,+BAA4F;AAC5F,8CAAwE;AAExE;;GAEG;AACH,SAAgB,gCAAgC;IAC9C,OAAO,IAAA,gCAAoB,EAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,2BAAoB,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC;AAFD,4EAEC;AAOD,SAAgB,6BAA6B,CAAI,KAAwB;IACvE,IAAI,IAAA,mBAAY,EAAC,KAAK,CAAC,EAAE;QACvB,OAAO,IAAA,oBAAQ,EAAmB,CAAC,WAAW,EAAE,EAAE;YAChD,OAAO,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,OAAO,IAAA,kBAAM,EAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAA,2BAAoB,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAA;KAC1E;AACH,CAAC;AARD,sEAQC"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../../packages/rxjs/src/lib/object.ts"],"names":[],"mappings":";;;AAAA,wCAAmD;AACnD,+BAA4F;AAC5F,8CAAwE;AAExE;;GAEG;AACH,SAAgB,gCAAgC;IAC9C,OAAO,IAAA,gCAAoB,EAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,yBAAkB,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAFD,4EAEC;AAOD,SAAgB,6BAA6B,CAAI,KAAwB;IACvE,IAAI,IAAA,mBAAY,EAAC,KAAK,CAAC,EAAE;QACvB,OAAO,IAAA,oBAAQ,EAAmB,CAAC,WAAW,EAAE,EAAE;YAChD,OAAO,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,OAAO,IAAA,kBAAM,EAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAA,yBAAkB,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAA;KACxE;AACH,CAAC;AARD,sEAQC"}
@@ -14,8 +14,18 @@ export declare function scanIntoArray<T>(config?: ScanIntoArrayConfig): Operator
14
14
  export declare function scanIntoArray<T>(config?: ScanIntoArrayConfig): OperatorFunction<Maybe<T>, T[]>;
15
15
  export declare function scanIntoArray<T>(config?: ScanIntoArrayConfig): OperatorFunction<Maybe<T[]>, T[]>;
16
16
  export interface ScanBuildArrayConfig<T> {
17
+ /**
18
+ *
19
+ */
17
20
  seed?: Maybe<T[]>;
21
+ /**
22
+ *
23
+ */
18
24
  accumulatorObs: Observable<Maybe<T>>;
25
+ /**
26
+ * Whether or not to flatten array values that are input.
27
+ */
28
+ flattenArray?: boolean;
19
29
  }
20
30
  export declare type ScanBuildArrayConfigFn<S, T> = (seedState: S) => ScanBuildArrayConfig<T>;
21
31
  /**
@@ -30,3 +40,10 @@ export declare type ScanBuildArrayConfigFn<S, T> = (seedState: S) => ScanBuildAr
30
40
  * @returns
31
41
  */
32
42
  export declare function scanBuildArray<S, T>(init: ScanBuildArrayConfigFn<S, T>): OperatorFunction<S, T[]>;
43
+ /**
44
+ * Convenience function with map to forEachWithArray
45
+ *
46
+ * @param forEach
47
+ * @returns
48
+ */
49
+ export declare function mapForEach<T>(forEach: Maybe<(value: T) => void>): OperatorFunction<T[], T[]>;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.scanBuildArray = exports.scanIntoArray = exports.distinctUntilArrayLengthChanges = void 0;
4
- const operators_1 = require("rxjs/operators");
3
+ exports.mapForEach = exports.scanBuildArray = exports.scanIntoArray = exports.distinctUntilArrayLengthChanges = void 0;
5
4
  const rxjs_1 = require("rxjs");
6
5
  const util_1 = require("@dereekb/util");
7
6
  function distinctUntilArrayLengthChanges(getArray) {
@@ -13,7 +12,7 @@ function distinctUntilArrayLengthChanges(getArray) {
13
12
  exports.distinctUntilArrayLengthChanges = distinctUntilArrayLengthChanges;
14
13
  function scanIntoArray(config = {}) {
15
14
  const { immutable = true } = config;
16
- return (0, operators_1.scan)((acc, next) => {
15
+ return (0, rxjs_1.scan)((acc, next) => {
17
16
  if (next != null) {
18
17
  if (immutable) {
19
18
  acc = acc.concat(next);
@@ -39,16 +38,31 @@ exports.scanIntoArray = scanIntoArray;
39
38
  * @returns
40
39
  */
41
40
  function scanBuildArray(init) {
42
- return (0, operators_1.exhaustMap)((seedState) => {
43
- const { seed = [], accumulatorObs } = init(seedState);
44
- return accumulatorObs.pipe((0, operators_1.startWith)(undefined), // Start with to not wait for the accumulator to pass a value.
45
- (0, operators_1.scan)((acc, next) => {
41
+ return (0, rxjs_1.exhaustMap)((seedState) => {
42
+ const { seed = [], accumulatorObs, flattenArray = false } = init(seedState);
43
+ return accumulatorObs.pipe((0, rxjs_1.startWith)(undefined), // Start with to not wait for the accumulator to pass a value.
44
+ (0, rxjs_1.scan)((acc, next) => {
46
45
  if (next != null) {
47
- acc = (0, util_1.mergeArrayOrValueIntoArray)(acc, next);
46
+ if (flattenArray && Array.isArray(next)) {
47
+ (0, util_1.mergeArrayIntoArray)(acc, next);
48
+ }
49
+ else {
50
+ acc.push(next);
51
+ }
48
52
  }
49
53
  return acc;
50
- }, seed), distinctUntilArrayLengthChanges(), (0, operators_1.shareReplay)(1));
54
+ }, seed !== null && seed !== void 0 ? seed : []), distinctUntilArrayLengthChanges(), (0, rxjs_1.shareReplay)(1));
51
55
  });
52
56
  }
53
57
  exports.scanBuildArray = scanBuildArray;
58
+ /**
59
+ * Convenience function with map to forEachWithArray
60
+ *
61
+ * @param forEach
62
+ * @returns
63
+ */
64
+ function mapForEach(forEach) {
65
+ return (forEach) ? (0, rxjs_1.map)(x => (0, util_1.forEachWithArray)(x, forEach)) : (0, rxjs_1.map)(x => x);
66
+ }
67
+ exports.mapForEach = mapForEach;
54
68
  //# sourceMappingURL=array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/rxjs/array.ts"],"names":[],"mappings":";;;AAAA,8CAA0E;AAC1E,+BAAoG;AACpG,wCAAgF;AAIhF,SAAgB,+BAA+B,CAAI,QAA8B;IAC/E,IAAI,CAAC,QAAQ,EAAE;QACb,QAAQ,GAAG,CAAC,KAAQ,EAAE,EAAE,CAAC,KAAqB,CAAA;KAC/C;IAED,OAAO,IAAA,2BAAoB,EAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7E,CAAC;AAND,0EAMC;AAcD,SAAgB,aAAa,CAAI,SAAkC,EAAE;IACnE,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IACpC,OAAO,IAAA,gBAAI,EAAC,CAAC,GAAQ,EAAE,IAA4B,EAAE,EAAE;QACrD,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,IAAI,SAAS,EAAE;gBACb,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;aACxB;iBAAM;gBACL,GAAG,GAAG,IAAA,iCAA0B,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aAC7C;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAbD,sCAaC;AAMA,CAAC;AAIF;;;;;;;;;;GAUG;AACH,SAAgB,cAAc,CAAO,IAAkC;IACrE,OAAO,IAAA,sBAAU,EAAC,CAAC,SAAY,EAAE,EAAE;QACjC,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,OAAO,cAAc,CAAC,IAAI,CACxB,IAAA,qBAAS,EAAC,SAAgB,CAAC,EAAE,8DAA8D;QAC3F,IAAA,gBAAI,EAAC,CAAC,GAAe,EAAE,IAA4B,EAAE,EAAE;YACrD,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,GAAG,GAAG,IAAA,iCAA0B,EAAC,GAAI,EAAE,IAAK,CAAC,CAAC;aAC/C;YAED,OAAO,GAAI,CAAC;QACd,CAAC,EAAE,IAAK,CAA2C,EACnD,+BAA+B,EAAE,EACjC,IAAA,uBAAW,EAAC,CAAC,CAAC,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAjBD,wCAiBC"}
1
+ {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/rxjs/array.ts"],"names":[],"mappings":";;;AAAA,+BAAmJ;AACnJ,wCAAuH;AAIvH,SAAgB,+BAA+B,CAAI,QAA8B;IAC/E,IAAI,CAAC,QAAQ,EAAE;QACb,QAAQ,GAAG,CAAC,KAAQ,EAAE,EAAE,CAAC,KAAqB,CAAA;KAC/C;IAED,OAAO,IAAA,2BAAoB,EAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7E,CAAC;AAND,0EAMC;AAcD,SAAgB,aAAa,CAAI,SAAkC,EAAE;IACnE,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IACpC,OAAO,IAAA,WAAI,EAAC,CAAC,GAAQ,EAAE,IAA4B,EAAE,EAAE;QACrD,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,IAAI,SAAS,EAAE;gBACb,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;aACxB;iBAAM;gBACL,GAAG,GAAG,IAAA,iCAA0B,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aAC7C;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAbD,sCAaC;AAgBA,CAAC;AAIF;;;;;;;;;;GAUG;AACH,SAAgB,cAAc,CAAO,IAAkC;IACrE,OAAO,IAAA,iBAAU,EAAC,CAAC,SAAY,EAAE,EAAE;QACjC,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAE5E,OAAO,cAAc,CAAC,IAAI,CACxB,IAAA,gBAAS,EAAC,SAAgB,CAAC,EAAE,8DAA8D;QAC3F,IAAA,WAAI,EAAC,CAAC,GAAQ,EAAE,IAA4B,EAAE,EAAE;YAE9C,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,IAAI,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACvC,IAAA,0BAAmB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;iBAChC;qBAAM;oBACL,GAAG,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC;iBACvB;aACF;YAED,OAAO,GAAI,CAAC;QACd,CAAC,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAA2C,EACxD,+BAA+B,EAAE,EACjC,IAAA,kBAAW,EAAC,CAAC,CAAC,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAtBD,wCAsBC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAI,OAAkC;IAC9D,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,CAAC,IAAA,uBAAgB,EAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAFD,gCAEC"}