@ngneers/easy-ngrx-distinct-selector
Version:
Provides functions to easily create @ngrx/store selectors with equal functions for arguments and result values.
16 lines • 633 B
JavaScript
import { createSelectorFactory } from '@ngrx/store';
import { typeFriendlyDefaultMemoize } from './type-friendly-default-memoize';
export function createDistinctSelector(...input) {
const last = input[input.length - 1];
let options = undefined;
if (typeof last === 'object' && last !== null) {
options = input.pop();
}
if (input.length === 1) {
input.splice(0, 0, (x) => x);
}
return createSelectorFactory(projector => {
return typeFriendlyDefaultMemoize(projector, options?.argsEqual, options?.resultEqual);
})(...input);
}
//# sourceMappingURL=create-distinct-selector.js.map