@dereekb/rxjs 9.24.39 → 9.24.41
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.
- package/CHANGELOG.md +8 -0
- package/package.json +2 -2
- package/src/lib/loading/loading.state.d.ts +9 -0
- package/src/lib/loading/loading.state.js +14 -13
- package/src/lib/loading/loading.state.js.map +1 -1
- package/src/lib/loading/loading.state.rxjs.d.ts +33 -1
- package/src/lib/loading/loading.state.rxjs.js +38 -1
- package/src/lib/loading/loading.state.rxjs.js.map +1 -1
- package/src/lib/rxjs/key.js +2 -16
- package/src/lib/rxjs/key.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [9.24.41](https://github.com/dereekb/dbx-components/compare/v9.24.40-dev...v9.24.41) (2023-08-30)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [9.24.40](https://github.com/dereekb/dbx-components/compare/v9.24.39-dev...v9.24.40) (2023-08-30)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
5
13
|
## [9.24.39](https://github.com/dereekb/dbx-components/compare/v9.24.38-dev...v9.24.39) (2023-08-30)
|
|
6
14
|
|
|
7
15
|
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/rxjs",
|
|
3
|
-
"version": "9.24.
|
|
3
|
+
"version": "9.24.41",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"types": "./src/index.d.ts",
|
|
7
7
|
"dependencies": {},
|
|
8
8
|
"peerDependencies": {
|
|
9
9
|
"rxjs": "^7.5.0",
|
|
10
|
-
"@dereekb/util": "9.24.
|
|
10
|
+
"@dereekb/util": "9.24.41",
|
|
11
11
|
"lodash.isequal": "^4.5.0",
|
|
12
12
|
"make-error": "^1.3.0",
|
|
13
13
|
"class-validator": "^0.13.2",
|
|
@@ -143,6 +143,15 @@ export declare function loadingStateHasFinishedLoadingWithValue<L extends Loadin
|
|
|
143
143
|
* @returns
|
|
144
144
|
*/
|
|
145
145
|
export declare function loadingStateHasFinishedLoadingWithError<L extends LoadingState>(state: Maybe<L> | LoadingState<LoadingStateValue<L>>): state is LoadingStateWithError<LoadingStateValue<L>>;
|
|
146
|
+
/**
|
|
147
|
+
* Returns true if the metadata from both input states are equivalent.
|
|
148
|
+
*
|
|
149
|
+
* The considered metadata is the page, loading, and error values.
|
|
150
|
+
*
|
|
151
|
+
* @param a
|
|
152
|
+
* @param b
|
|
153
|
+
*/
|
|
154
|
+
export declare function loadingStatesHaveEquivalentMetadata(a: Partial<PageLoadingState>, b: Partial<PageLoadingState>): boolean;
|
|
146
155
|
/**
|
|
147
156
|
* Merges the input loading states.
|
|
148
157
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.mapLoadingStateValueFunction = exports.mapLoadingStateResults = exports.mapMultipleLoadingStateResults = exports.updatedStateForSetError = exports.updatedStateForSetValue = exports.updatedStateForSetLoading = exports.mergeLoadingStates = exports.loadingStateHasFinishedLoadingWithError = exports.loadingStateHasFinishedLoadingWithValue = exports.loadingStateHasError = exports.loadingStateHasValue = exports.loadingStateHasFinishedLoading = exports.isErrorLoadingState = exports.isSuccessLoadingState = exports.loadingStateIsLoading = exports.loadingStateIsIdle = exports.allLoadingStatesHaveFinishedLoading = exports.unknownLoadingStatesIsLoading = exports.errorPageResult = exports.errorResult = exports.successPageResult = exports.successResult = exports.beginLoadingPage = 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.loadingStatesHaveEquivalentMetadata = exports.loadingStateHasFinishedLoadingWithError = exports.loadingStateHasFinishedLoadingWithValue = exports.loadingStateHasError = exports.loadingStateHasValue = exports.loadingStateHasFinishedLoading = exports.isErrorLoadingState = exports.isSuccessLoadingState = exports.loadingStateIsLoading = exports.loadingStateIsIdle = exports.allLoadingStatesHaveFinishedLoading = exports.unknownLoadingStatesIsLoading = exports.errorPageResult = exports.errorResult = exports.successPageResult = exports.successResult = exports.beginLoadingPage = exports.beginLoading = exports.idleLoadingState = exports.loadingStateType = exports.LoadingStateType = void 0;
|
|
4
4
|
const util_1 = require("@dereekb/util");
|
|
5
5
|
// MARK: Utility
|
|
6
6
|
/**
|
|
@@ -95,18 +95,7 @@ function loadingStateIsIdle(state) {
|
|
|
95
95
|
}
|
|
96
96
|
exports.loadingStateIsIdle = loadingStateIsIdle;
|
|
97
97
|
function loadingStateIsLoading(state) {
|
|
98
|
-
|
|
99
|
-
const loading = state.loading;
|
|
100
|
-
if (loading === true) {
|
|
101
|
-
return true;
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
return loading !== null && loading !== void 0 ? loading : !(state.value || state.error);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
return false;
|
|
109
|
-
}
|
|
98
|
+
return !loadingStateHasFinishedLoading(state);
|
|
110
99
|
}
|
|
111
100
|
exports.loadingStateIsLoading = loadingStateIsLoading;
|
|
112
101
|
function isSuccessLoadingState(state) {
|
|
@@ -202,6 +191,18 @@ function loadingStateHasFinishedLoadingWithError(state) {
|
|
|
202
191
|
}
|
|
203
192
|
}
|
|
204
193
|
exports.loadingStateHasFinishedLoadingWithError = loadingStateHasFinishedLoadingWithError;
|
|
194
|
+
/**
|
|
195
|
+
* Returns true if the metadata from both input states are equivalent.
|
|
196
|
+
*
|
|
197
|
+
* The considered metadata is the page, loading, and error values.
|
|
198
|
+
*
|
|
199
|
+
* @param a
|
|
200
|
+
* @param b
|
|
201
|
+
*/
|
|
202
|
+
function loadingStatesHaveEquivalentMetadata(a, b) {
|
|
203
|
+
return (0, util_1.valuesAreBothNullishOrEquivalent)(a.page, b.page) && a.loading == b.loading && (0, util_1.valuesAreBothNullishOrEquivalent)(a.error, b.error);
|
|
204
|
+
}
|
|
205
|
+
exports.loadingStatesHaveEquivalentMetadata = loadingStatesHaveEquivalentMetadata;
|
|
205
206
|
function mergeLoadingStates(...args) {
|
|
206
207
|
var _a;
|
|
207
208
|
const validArgs = (0, util_1.filterMaybeValues)(args); // filter out any undefined values
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loading.state.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/loading.state.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"loading.state.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/loading.state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Maybe, ReadableError } from '@dereekb/util';
|
|
1
|
+
import { Maybe, ReadableError, EqualityComparatorFunction } from '@dereekb/util';
|
|
2
2
|
import { MonoTypeOperatorFunction, OperatorFunction, Observable, ObservableInputTuple } from 'rxjs';
|
|
3
3
|
import { LoadingState, PageLoadingState, MapLoadingStateResultsConfiguration, LoadingStateValue, LoadingStateType, LoadingStateWithValueType } from './loading.state';
|
|
4
4
|
/**
|
|
@@ -76,6 +76,38 @@ export declare function mapLoadingState<A, B, L extends Partial<PageLoadingState
|
|
|
76
76
|
export declare function mapLoadingStateValueWithOperator<L extends LoadingState, O>(operator: OperatorFunction<LoadingStateValue<L>, O>, mapOnUndefined?: boolean): OperatorFunction<L, LoadingStateWithValueType<L, O>>;
|
|
77
77
|
export declare function mapLoadingStateValueWithOperator<L extends PageLoadingState, O>(operator: OperatorFunction<LoadingStateValue<L>, O>, mapOnUndefined?: boolean): OperatorFunction<L, LoadingStateWithValueType<L, O>>;
|
|
78
78
|
export declare function mapLoadingStateValueWithOperator<L extends Partial<PageLoadingState>, O>(operator: OperatorFunction<LoadingStateValue<L>, O>, mapOnUndefined?: boolean): OperatorFunction<L, LoadingStateWithValueType<L, O>>;
|
|
79
|
+
export interface DistinctLoadingStateConfig<L extends LoadingState> {
|
|
80
|
+
/**
|
|
81
|
+
* Whether or not to pass the retained value when the next LoadingState's value (the value being considered by this DecisionFunction) is null/undefined.
|
|
82
|
+
*
|
|
83
|
+
* By default this uses a DecisionFunction that returns true on undefined and false on null.
|
|
84
|
+
*/
|
|
85
|
+
passRetainedValue?: (value: Maybe<LoadingStateValue<L>>, previousValue: Maybe<LoadingStateValue<L>>, state: L, previousState: Maybe<L>) => boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Whether or not to compare the
|
|
88
|
+
*/
|
|
89
|
+
compareOnUndefinedValue?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Used for comparing the values of the LoadingState.
|
|
92
|
+
*/
|
|
93
|
+
valueComparator: EqualityComparatorFunction<Maybe<LoadingStateValue<L>>>;
|
|
94
|
+
/**
|
|
95
|
+
* Used for comparing the metadata values of the LoadingState. By default uses loadingStatesHaveEquivalentMetadata.
|
|
96
|
+
*/
|
|
97
|
+
metadataComparator?: EqualityComparatorFunction<Maybe<Partial<L>>>;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* A special distinctUntilChanged-like operator for LoadingState and PageLoadingState.
|
|
101
|
+
*
|
|
102
|
+
* It saves the previous value and passes it through whenever the LoadingState changes.
|
|
103
|
+
*
|
|
104
|
+
* @param operator
|
|
105
|
+
* @param mapOnUndefined
|
|
106
|
+
* @returns
|
|
107
|
+
*/
|
|
108
|
+
export declare function distinctLoadingState<L extends LoadingState>(config: EqualityComparatorFunction<Maybe<LoadingStateValue<L>>> | DistinctLoadingStateConfig<L>): MonoTypeOperatorFunction<L>;
|
|
109
|
+
export declare function distinctLoadingState<L extends PageLoadingState>(config: EqualityComparatorFunction<Maybe<LoadingStateValue<L>>> | DistinctLoadingStateConfig<L>): MonoTypeOperatorFunction<L>;
|
|
110
|
+
export declare function distinctLoadingState<L extends Partial<PageLoadingState>>(config: EqualityComparatorFunction<Maybe<LoadingStateValue<L>>> | DistinctLoadingStateConfig<L>): MonoTypeOperatorFunction<L>;
|
|
79
111
|
/**
|
|
80
112
|
* Creates a promise from a Observable that pipes loading states that resolves the value when the loading state has finished loading.
|
|
81
113
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.promiseFromLoadingState = exports.mapLoadingStateValueWithOperator = exports.mapLoadingState = exports.tapOnLoadingStateSuccess = exports.tapOnLoadingStateType = exports.valueFromFinishedLoadingState = exports.errorFromLoadingState = exports.valueFromLoadingState = exports.startWithBeginLoading = exports.combineLoadingStatesStatus = exports.combineLoadingStates = exports.loadingStateFromObs = void 0;
|
|
3
|
+
exports.promiseFromLoadingState = exports.distinctLoadingState = exports.mapLoadingStateValueWithOperator = exports.mapLoadingState = exports.tapOnLoadingStateSuccess = exports.tapOnLoadingStateType = exports.valueFromFinishedLoadingState = exports.errorFromLoadingState = exports.valueFromLoadingState = exports.startWithBeginLoading = exports.combineLoadingStatesStatus = exports.combineLoadingStates = exports.loadingStateFromObs = void 0;
|
|
4
4
|
const util_1 = require("@dereekb/util");
|
|
5
5
|
const rxjs_1 = require("rxjs");
|
|
6
6
|
const rxjs_2 = require("../rxjs");
|
|
@@ -135,6 +135,43 @@ function mapLoadingStateValueWithOperator(operator, mapOnUndefined = false) {
|
|
|
135
135
|
};
|
|
136
136
|
}
|
|
137
137
|
exports.mapLoadingStateValueWithOperator = mapLoadingStateValueWithOperator;
|
|
138
|
+
function distinctLoadingState(inputConfig) {
|
|
139
|
+
const { compareOnUndefinedValue, valueComparator, metadataComparator: inputMetadataComparator, passRetainedValue: inputPassRetainedValue } = typeof inputConfig === 'function' ? { valueComparator: inputConfig } : inputConfig;
|
|
140
|
+
const passRetainedValue = inputPassRetainedValue !== null && inputPassRetainedValue !== void 0 ? inputPassRetainedValue : ((x) => x !== null);
|
|
141
|
+
const metadataComparator = inputMetadataComparator !== null && inputMetadataComparator !== void 0 ? inputMetadataComparator : loading_state_1.loadingStatesHaveEquivalentMetadata;
|
|
142
|
+
return (obs) => {
|
|
143
|
+
return obs.pipe((0, rxjs_1.scan)((acc, state) => {
|
|
144
|
+
const nextValue = state.value;
|
|
145
|
+
// determine the value change
|
|
146
|
+
let isSameValue = false;
|
|
147
|
+
if ((0, loading_state_1.loadingStateHasValue)(state) || (compareOnUndefinedValue && (0, loading_state_1.loadingStateHasFinishedLoading)(state) && !(0, loading_state_1.loadingStateHasError)(state))) {
|
|
148
|
+
// if the value is the same, then
|
|
149
|
+
isSameValue = valueComparator(nextValue, acc.value);
|
|
150
|
+
}
|
|
151
|
+
else if (passRetainedValue(nextValue, acc.value, state, acc.previous)) {
|
|
152
|
+
isSameValue = true;
|
|
153
|
+
}
|
|
154
|
+
// determine the metadata changes
|
|
155
|
+
let isSameLoadingStateMetadata = (0, util_1.safeCompareEquality)(state, acc.previous, metadataComparator);
|
|
156
|
+
// pick the value
|
|
157
|
+
const value = isSameValue ? acc.value : nextValue;
|
|
158
|
+
const current = Object.assign(Object.assign({}, state), { // copy all metadata over
|
|
159
|
+
value // set the new value
|
|
160
|
+
});
|
|
161
|
+
return Object.assign(Object.assign({}, acc), { value,
|
|
162
|
+
isSameValue,
|
|
163
|
+
isSameLoadingStateMetadata, previous: state, current });
|
|
164
|
+
}, {
|
|
165
|
+
isSameValue: false,
|
|
166
|
+
isSameLoadingStateMetadata: false
|
|
167
|
+
}),
|
|
168
|
+
// only pipe through when the value is different or the loading state metadata is different
|
|
169
|
+
(0, rxjs_1.filter)((x) => !(x.isSameValue && x.isSameLoadingStateMetadata)),
|
|
170
|
+
// pass the current state
|
|
171
|
+
(0, rxjs_1.map)((x) => x.current));
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
exports.distinctLoadingState = distinctLoadingState;
|
|
138
175
|
/**
|
|
139
176
|
* Creates a promise from a Observable that pipes loading states that resolves the value when the loading state has finished loading.
|
|
140
177
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loading.state.rxjs.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/loading.state.rxjs.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"loading.state.rxjs.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/loading/loading.state.rxjs.ts"],"names":[],"mappings":"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"}
|
package/src/lib/rxjs/key.js
CHANGED
|
@@ -9,21 +9,7 @@ const rxjs_1 = require("rxjs");
|
|
|
9
9
|
* @param readkey
|
|
10
10
|
*/
|
|
11
11
|
function distinctUntilKeysChange(readKey) {
|
|
12
|
-
|
|
13
|
-
const readKeysArray = (0, util_1.readKeysFunction)(readKey);
|
|
14
|
-
return (0, rxjs_1.distinctUntilChanged)((a, b) => {
|
|
15
|
-
if (a.length === b.length) {
|
|
16
|
-
if (a.length === 0) {
|
|
17
|
-
return true; // both the same/empty arrays
|
|
18
|
-
}
|
|
19
|
-
const aKeys = readKeysSet(a);
|
|
20
|
-
const bKeys = readKeysArray(b);
|
|
21
|
-
if (aKeys.size === bKeys.length) {
|
|
22
|
-
return (0, util_1.setContainsAllValues)(aKeys, bKeys);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return false;
|
|
26
|
-
});
|
|
12
|
+
return (0, rxjs_1.distinctUntilChanged)((0, util_1.objectKeysEqualityComparatorFunction)(readKey));
|
|
27
13
|
}
|
|
28
14
|
exports.distinctUntilKeysChange = distinctUntilKeysChange;
|
|
29
15
|
/**
|
|
@@ -33,7 +19,7 @@ exports.distinctUntilKeysChange = distinctUntilKeysChange;
|
|
|
33
19
|
* @returns
|
|
34
20
|
*/
|
|
35
21
|
function distinctUntilObjectKeyChange(readKey) {
|
|
36
|
-
return (0, rxjs_1.distinctUntilChanged)((
|
|
22
|
+
return (0, rxjs_1.distinctUntilChanged)((0, util_1.objectKeyEqualityComparatorFunction)(readKey));
|
|
37
23
|
}
|
|
38
24
|
exports.distinctUntilObjectKeyChange = distinctUntilObjectKeyChange;
|
|
39
25
|
//# sourceMappingURL=key.js.map
|
package/src/lib/rxjs/key.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/rxjs/key.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"key.js","sourceRoot":"","sources":["../../../../../../packages/rxjs/src/lib/rxjs/key.ts"],"names":[],"mappings":";;;AAAA,wCAA4P;AAC5P,+BAAsE;AAEtE;;;;GAIG;AACH,SAAgB,uBAAuB,CAA2C,OAA+D;IAC/I,OAAO,IAAA,2BAAoB,EAAM,IAAA,2CAAoC,EAAC,OAAO,CAAC,CAAC,CAAC;AAClF,CAAC;AAFD,0DAEC;AAED;;;;;GAKG;AACH,SAAgB,4BAA4B,CAAI,OAA2B;IACzE,OAAO,IAAA,2BAAoB,EAAI,IAAA,0CAAmC,EAAC,OAAO,CAAC,CAAC,CAAC;AAC/E,CAAC;AAFD,oEAEC"}
|