@ngrx-traits/common 18.4.2 → 19.0.0-beta.2
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/fesm2022/ngrx-traits-common.mjs +12 -12
- package/fesm2022/ngrx-traits-common.mjs.map +1 -1
- package/package.json +7 -9
- package/reset/reset.trait.d.ts +1 -1
- package/esm2022/async-action/async-action.model.mjs +0 -2
- package/esm2022/async-action/async-action.trait.mjs +0 -116
- package/esm2022/async-action/index.mjs +0 -3
- package/esm2022/crud-entities/crud-entities.model.mjs +0 -8
- package/esm2022/crud-entities/crud-entities.trait.actions.mjs +0 -20
- package/esm2022/crud-entities/crud-entities.trait.mjs +0 -58
- package/esm2022/crud-entities/crud-entities.trait.mutators.mjs +0 -121
- package/esm2022/crud-entities/crud-entities.trait.reducer.mjs +0 -17
- package/esm2022/crud-entities/crud-entities.trait.selectors.mjs +0 -54
- package/esm2022/crud-entities/index.mjs +0 -3
- package/esm2022/entities-pagination/entities-pagination.model.internal.mjs +0 -2
- package/esm2022/entities-pagination/entities-pagination.model.mjs +0 -2
- package/esm2022/entities-pagination/entities-pagination.trait.actions.mjs +0 -20
- package/esm2022/entities-pagination/entities-pagination.trait.effects.mjs +0 -63
- package/esm2022/entities-pagination/entities-pagination.trait.mjs +0 -94
- package/esm2022/entities-pagination/entities-pagination.trait.mutators.mjs +0 -66
- package/esm2022/entities-pagination/entities-pagination.trait.reducer.mjs +0 -79
- package/esm2022/entities-pagination/entities-pagination.trait.selectors.mjs +0 -84
- package/esm2022/entities-pagination/index.mjs +0 -3
- package/esm2022/entities-sync-to-route-query-params/entities-sync-to-route-query-params.mjs +0 -127
- package/esm2022/entities-sync-to-route-query-params/index.mjs +0 -2
- package/esm2022/filter-entities/filter-entities.model.internal.mjs +0 -2
- package/esm2022/filter-entities/filter-entities.model.mjs +0 -2
- package/esm2022/filter-entities/filter-entities.trait.actions.mjs +0 -16
- package/esm2022/filter-entities/filter-entities.trait.effect.mjs +0 -59
- package/esm2022/filter-entities/filter-entities.trait.mjs +0 -74
- package/esm2022/filter-entities/filter-entities.trait.mutators.mjs +0 -10
- package/esm2022/filter-entities/filter-entities.trait.reducer.mjs +0 -11
- package/esm2022/filter-entities/filter-entities.trait.selectors.mjs +0 -9
- package/esm2022/filter-entities/index.mjs +0 -3
- package/esm2022/index.mjs +0 -13
- package/esm2022/load-entities/index.mjs +0 -3
- package/esm2022/load-entities/load-entities.model.mjs +0 -2
- package/esm2022/load-entities/load-entities.mutators.mjs +0 -7
- package/esm2022/load-entities/load-entities.trait.actions.mjs +0 -10
- package/esm2022/load-entities/load-entities.trait.mjs +0 -62
- package/esm2022/load-entities/load-entities.trait.reducer.mjs +0 -27
- package/esm2022/load-entities/load-entities.trait.selectors.mjs +0 -38
- package/esm2022/load-entities/load-entities.utils.mjs +0 -10
- package/esm2022/load-entity/index.mjs +0 -3
- package/esm2022/load-entity/load-entity.model.mjs +0 -2
- package/esm2022/load-entity/load-entity.traits.mjs +0 -78
- package/esm2022/ngrx-traits-common.mjs +0 -5
- package/esm2022/reset/index.mjs +0 -2
- package/esm2022/reset/reset.trait.mjs +0 -37
- package/esm2022/select-entities/index.mjs +0 -4
- package/esm2022/select-entities/select-entities.model.mjs +0 -2
- package/esm2022/select-entities/select-entities.trait.actions.mjs +0 -11
- package/esm2022/select-entities/select-entities.trait.mjs +0 -55
- package/esm2022/select-entities/select-entities.trait.mutators.mjs +0 -27
- package/esm2022/select-entities/select-entities.trait.reducer.mjs +0 -42
- package/esm2022/select-entities/select-entities.trait.selectors.mjs +0 -28
- package/esm2022/select-entities/select-entities.utils.mjs +0 -30
- package/esm2022/select-entity/index.mjs +0 -3
- package/esm2022/select-entity/select-entity.model.mjs +0 -2
- package/esm2022/select-entity/select-entity.trait.actions.mjs +0 -9
- package/esm2022/select-entity/select-entity.trait.mjs +0 -52
- package/esm2022/select-entity/select-entity.trait.mutators.mjs +0 -26
- package/esm2022/select-entity/select-entity.trait.reducer.mjs +0 -35
- package/esm2022/select-entity/select-entity.trait.selectors.mjs +0 -13
- package/esm2022/set-entity/index.mjs +0 -3
- package/esm2022/set-entity/set-entity.model.mjs +0 -2
- package/esm2022/set-entity/set-entity.trait.mjs +0 -62
- package/esm2022/sort-entities/index.mjs +0 -4
- package/esm2022/sort-entities/sort-entities.model.mjs +0 -2
- package/esm2022/sort-entities/sort-entities.trait.actions.mjs +0 -8
- package/esm2022/sort-entities/sort-entities.trait.effect.mjs +0 -28
- package/esm2022/sort-entities/sort-entities.trait.mjs +0 -61
- package/esm2022/sort-entities/sort-entities.trait.mutators.mjs +0 -24
- package/esm2022/sort-entities/sort-entities.trait.reducer.mjs +0 -15
- package/esm2022/sort-entities/sort-entities.trait.selectors.mjs +0 -9
- package/esm2022/sort-entities/sort-entities.utils.mjs +0 -63
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export function createSelectEntityTraitMutators() {
|
|
2
|
-
function selectEntity(id, state) {
|
|
3
|
-
return {
|
|
4
|
-
...state,
|
|
5
|
-
selectedId: id,
|
|
6
|
-
};
|
|
7
|
-
}
|
|
8
|
-
function deselectEntity(state) {
|
|
9
|
-
return {
|
|
10
|
-
...state,
|
|
11
|
-
selectedId: undefined,
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
function toggleSelectEntity(id, state) {
|
|
15
|
-
return {
|
|
16
|
-
...state,
|
|
17
|
-
selectedId: state.selectedId === id ? undefined : id,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
return {
|
|
21
|
-
selectEntity,
|
|
22
|
-
deselectEntity,
|
|
23
|
-
toggleSelectEntity,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudGl0eS50cmFpdC5tdXRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc2VsZWN0LWVudGl0eS9zZWxlY3QtZW50aXR5LnRyYWl0Lm11dGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSwrQkFBK0I7SUFHN0MsU0FBUyxZQUFZLENBRW5CLEVBQW1CLEVBQUUsS0FBUTtRQUM3QixPQUFPO1lBQ0wsR0FBRyxLQUFLO1lBQ1IsVUFBVSxFQUFFLEVBQUU7U0FDZixDQUFDO0lBQ0osQ0FBQztJQUNELFNBQVMsY0FBYyxDQUVyQixLQUFRO1FBQ1IsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLFVBQVUsRUFBRSxTQUFTO1NBQ3RCLENBQUM7SUFDSixDQUFDO0lBQ0QsU0FBUyxrQkFBa0IsQ0FFekIsRUFBbUIsRUFBRSxLQUFRO1FBQzdCLE9BQU87WUFDTCxHQUFHLEtBQUs7WUFDUixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUNyRCxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU87UUFDTCxZQUFZO1FBQ1osY0FBYztRQUNkLGtCQUFrQjtLQUNuQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlbGVjdEVudGl0eU11dGF0b3JzLCBTZWxlY3RFbnRpdHlTdGF0ZSB9IGZyb20gJy4vc2VsZWN0LWVudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBMb2FkRW50aXRpZXNTdGF0ZSB9IGZyb20gJy4uL2xvYWQtZW50aXRpZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0RW50aXR5VHJhaXRNdXRhdG9yczxcbiAgRW50aXR5XG4+KCk6IFNlbGVjdEVudGl0eU11dGF0b3JzPEVudGl0eT4ge1xuICBmdW5jdGlvbiBzZWxlY3RFbnRpdHk8XG4gICAgUyBleHRlbmRzIExvYWRFbnRpdGllc1N0YXRlPEVudGl0eT4gJiBTZWxlY3RFbnRpdHlTdGF0ZVxuICA+KGlkOiBzdHJpbmcgfCBudW1iZXIsIHN0YXRlOiBTKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgc2VsZWN0ZWRJZDogaWQsXG4gICAgfTtcbiAgfVxuICBmdW5jdGlvbiBkZXNlbGVjdEVudGl0eTxcbiAgICBTIGV4dGVuZHMgTG9hZEVudGl0aWVzU3RhdGU8RW50aXR5PiAmIFNlbGVjdEVudGl0eVN0YXRlXG4gID4oc3RhdGU6IFMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3RhdGUsXG4gICAgICBzZWxlY3RlZElkOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxuICBmdW5jdGlvbiB0b2dnbGVTZWxlY3RFbnRpdHk8XG4gICAgUyBleHRlbmRzIExvYWRFbnRpdGllc1N0YXRlPEVudGl0eT4gJiBTZWxlY3RFbnRpdHlTdGF0ZVxuICA+KGlkOiBzdHJpbmcgfCBudW1iZXIsIHN0YXRlOiBTKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgc2VsZWN0ZWRJZDogc3RhdGUuc2VsZWN0ZWRJZCA9PT0gaWQgPyB1bmRlZmluZWQgOiBpZCxcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBzZWxlY3RFbnRpdHksXG4gICAgZGVzZWxlY3RFbnRpdHksXG4gICAgdG9nZ2xlU2VsZWN0RW50aXR5LFxuICB9O1xufVxuIl19
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { createReducer, on } from '@ngrx/store';
|
|
2
|
-
import { insertIf } from '@ngrx-traits/core';
|
|
3
|
-
export function createSelectEntityInitialState(previousInitialState, allConfigs) {
|
|
4
|
-
const selectedId = allConfigs.singleSelection?.selectedId;
|
|
5
|
-
return {
|
|
6
|
-
...previousInitialState,
|
|
7
|
-
selectedId,
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
export function createSelectEntityTraitReducer(initialState, allActions, allMutators, allConfigs) {
|
|
11
|
-
const { adapter } = allConfigs.loadEntities;
|
|
12
|
-
const sortRemote = allConfigs.sort?.remote;
|
|
13
|
-
const paginationCacheType = allConfigs.pagination?.cacheType;
|
|
14
|
-
return createReducer(initialState, on(allActions.selectEntity, (state, { id }) => allMutators.selectEntity(id, state)), on(allActions.deselectEntity, (state) => allMutators.deselectEntity(state)), on(allActions.toggleSelectEntity, (state, { id }) => allMutators.toggleSelectEntity(id, state)), ...insertIf(allActions.removeAllEntities, () => on(allActions.removeAllEntities, (state) => allMutators.deselectEntity(state))), ...insertIf(sortRemote, () => on(allActions.sortEntities, (state) => allMutators.deselectEntity(state))), ...insertIf(allActions.filterEntities, () => on(allActions.filterEntities, (state) => allMutators.deselectEntity(state))), ...insertIf(!allActions.loadEntitiesPageSuccess, () => on(allActions.loadEntitiesSuccess, (state) => allMutators.deselectEntity(state))), ...insertIf(!!allActions.loadEntitiesPageSuccess && paginationCacheType === 'partial', () => on(allActions.loadEntitiesPageSuccess, (state) => allMutators.deselectEntity(state))), ...insertIf(allActions.removeEntities, () => on(allActions.removeEntities, (state, { keys }) => {
|
|
15
|
-
const shouldDeselect = keys.some((v) => v === state.selectedId);
|
|
16
|
-
return shouldDeselect
|
|
17
|
-
? {
|
|
18
|
-
...state,
|
|
19
|
-
selectedId: undefined,
|
|
20
|
-
}
|
|
21
|
-
: state;
|
|
22
|
-
})), ...insertIf(allActions.updateEntities, () => on(allActions.updateEntities, (state, { updates }) => {
|
|
23
|
-
const change = updates.find((updated) => {
|
|
24
|
-
const id = adapter.selectId(updated.changes);
|
|
25
|
-
return id && id !== updated.id && state.selectedId === updated.id;
|
|
26
|
-
});
|
|
27
|
-
return change
|
|
28
|
-
? {
|
|
29
|
-
...state,
|
|
30
|
-
selectedId: adapter.selectId(change.changes),
|
|
31
|
-
}
|
|
32
|
-
: state;
|
|
33
|
-
})));
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudGl0eS50cmFpdC5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ3J4LXRyYWl0cy9jb21tb24vc3JjL2xpYi9zZWxlY3QtZW50aXR5L3NlbGVjdC1lbnRpdHkudHJhaXQucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQWlCaEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBUTdDLE1BQU0sVUFBVSw4QkFBOEIsQ0FDNUMsb0JBQXlCLEVBQ3pCLFVBQW1DO0lBRW5DLE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDO0lBQzFELE9BQU87UUFDTCxHQUFHLG9CQUFvQjtRQUN2QixVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFDRCxNQUFNLFVBQVUsOEJBQThCLENBSTVDLFlBQWUsRUFDZixVQUs2QixFQUM3QixXQUF5QyxFQUN6QyxVQUdpQztJQUVqQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsVUFBVSxDQUFDLFlBQWEsQ0FBQztJQUU3QyxNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUMzQyxNQUFNLG1CQUFtQixHQUFHLFVBQVUsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDO0lBRTdELE9BQU8sYUFBYSxDQUNsQixZQUFZLEVBQ1osRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQzVDLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUNwQyxFQUNELEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQzNFLEVBQUUsQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQ2xELFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQzFDLEVBQ0QsR0FBRyxRQUFRLENBQUksVUFBVSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUNoRCxFQUFFLENBQUMsVUFBVSxDQUFDLGlCQUFpQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDekMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FDbEMsQ0FDRixFQUNELEdBQUcsUUFBUSxDQUFJLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FDOUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDMUUsRUFDRCxHQUFHLFFBQVEsQ0FBSSxVQUFVLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRSxDQUM3QyxFQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ3RDLFdBQVcsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQ2xDLENBQ0YsRUFDRCxHQUFHLFFBQVEsQ0FBSSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxHQUFHLEVBQUUsQ0FDdkQsRUFBRSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQzNDLFdBQVcsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQ2xDLENBQ0YsRUFDRCxHQUFHLFFBQVEsQ0FDVCxDQUFDLENBQUMsVUFBVSxDQUFDLHVCQUF1QixJQUFJLG1CQUFtQixLQUFLLFNBQVMsRUFDekUsR0FBRyxFQUFFLENBQ0gsRUFBRSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQy9DLFdBQVcsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQ2xDLENBQ0osRUFDRCxHQUFHLFFBQVEsQ0FBSSxVQUFVLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRSxDQUM3QyxFQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUU7UUFDaEQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FDOUIsQ0FBQyxDQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLFVBQVUsQ0FDL0MsQ0FBQztRQUNGLE9BQU8sY0FBYztZQUNuQixDQUFDLENBQUM7Z0JBQ0UsR0FBRyxLQUFLO2dCQUNSLFVBQVUsRUFBRSxTQUFTO2FBQ3RCO1lBQ0gsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNaLENBQUMsQ0FBQyxDQUNILEVBQ0QsR0FBRyxRQUFRLENBQUksVUFBVSxDQUFDLGNBQWMsRUFBRSxHQUFHLEVBQUUsQ0FDN0MsRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1FBQ25ELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN0QyxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFpQixDQUFDLENBQUM7WUFDdkQsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLE9BQU8sQ0FBQyxFQUFFLElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNO1lBQ1gsQ0FBQyxDQUFDO2dCQUNFLEdBQUcsS0FBSztnQkFDUixVQUFVLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBaUIsQ0FBQzthQUN2RDtZQUNILENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDWixDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUmVkdWNlciwgb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBMb2FkRW50aXRpZXNBY3Rpb25zLFxuICBMb2FkRW50aXRpZXNLZXllZENvbmZpZyxcbiAgTG9hZEVudGl0aWVzU3RhdGUsXG59IGZyb20gJy4uL2xvYWQtZW50aXRpZXMvbG9hZC1lbnRpdGllcy5tb2RlbCc7XG5pbXBvcnQge1xuICBTb3J0RW50aXRpZXNBY3Rpb25zLFxuICBTb3J0RW50aXRpZXNLZXllZENvbmZpZyxcbn0gZnJvbSAnLi4vc29ydC1lbnRpdGllcy9zb3J0LWVudGl0aWVzLm1vZGVsJztcbmltcG9ydCB7XG4gIFNlbGVjdEVudGl0eUFjdGlvbnMsXG4gIFNlbGVjdEVudGl0eUtleWVkQ29uZmlnLFxuICBTZWxlY3RFbnRpdHlNdXRhdG9ycyxcbiAgU2VsZWN0RW50aXR5U3RhdGUsXG59IGZyb20gJy4vc2VsZWN0LWVudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBDcnVkRW50aXRpZXNBY3Rpb25zIH0gZnJvbSAnLi4vY3J1ZC1lbnRpdGllcy9jcnVkLWVudGl0aWVzLm1vZGVsJztcbmltcG9ydCB7IGluc2VydElmIH0gZnJvbSAnQG5ncngtdHJhaXRzL2NvcmUnO1xuaW1wb3J0IHtcbiAgRW50aXRpZXNQYWdpbmF0aW9uQWN0aW9ucyxcbiAgRW50aXRpZXNQYWdpbmF0aW9uS2V5ZWRDb25maWcsXG59IGZyb20gJy4uL2VudGl0aWVzLXBhZ2luYXRpb24vZW50aXRpZXMtcGFnaW5hdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBGaWx0ZXJFbnRpdGllc0FjdGlvbnMgfSBmcm9tICcuLi9maWx0ZXItZW50aXRpZXMnO1xuaW1wb3J0IHsgY3JlYXRlU2VsZWN0RW50aXR5VHJhaXRBY3Rpb25zIH0gZnJvbSAnLi9zZWxlY3QtZW50aXR5LnRyYWl0LmFjdGlvbnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0RW50aXR5SW5pdGlhbFN0YXRlPEVudGl0eT4oXG4gIHByZXZpb3VzSW5pdGlhbFN0YXRlOiBhbnksXG4gIGFsbENvbmZpZ3M6IFNlbGVjdEVudGl0eUtleWVkQ29uZmlnXG4pOiBMb2FkRW50aXRpZXNTdGF0ZTxFbnRpdHk+ICYgU2VsZWN0RW50aXR5U3RhdGUge1xuICBjb25zdCBzZWxlY3RlZElkID0gYWxsQ29uZmlncy5zaW5nbGVTZWxlY3Rpb24/LnNlbGVjdGVkSWQ7XG4gIHJldHVybiB7XG4gICAgLi4ucHJldmlvdXNJbml0aWFsU3RhdGUsXG4gICAgc2VsZWN0ZWRJZCxcbiAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZWxlY3RFbnRpdHlUcmFpdFJlZHVjZXI8XG4gIEVudGl0eSxcbiAgUyBleHRlbmRzIExvYWRFbnRpdGllc1N0YXRlPEVudGl0eT4gJiBTZWxlY3RFbnRpdHlTdGF0ZVxuPihcbiAgaW5pdGlhbFN0YXRlOiBTLFxuICBhbGxBY3Rpb25zOiBTZWxlY3RFbnRpdHlBY3Rpb25zICZcbiAgICBDcnVkRW50aXRpZXNBY3Rpb25zPEVudGl0eT4gJlxuICAgIFNvcnRFbnRpdGllc0FjdGlvbnM8RW50aXR5PiAmXG4gICAgRW50aXRpZXNQYWdpbmF0aW9uQWN0aW9ucyAmXG4gICAgRmlsdGVyRW50aXRpZXNBY3Rpb25zPGFueT4gJlxuICAgIExvYWRFbnRpdGllc0FjdGlvbnM8RW50aXR5PixcbiAgYWxsTXV0YXRvcnM6IFNlbGVjdEVudGl0eU11dGF0b3JzPEVudGl0eT4sXG4gIGFsbENvbmZpZ3M6IFNlbGVjdEVudGl0eUtleWVkQ29uZmlnICZcbiAgICBMb2FkRW50aXRpZXNLZXllZENvbmZpZzxFbnRpdHk+ICZcbiAgICBFbnRpdGllc1BhZ2luYXRpb25LZXllZENvbmZpZyAmXG4gICAgU29ydEVudGl0aWVzS2V5ZWRDb25maWc8RW50aXR5PlxuKSB7XG4gIGNvbnN0IHsgYWRhcHRlciB9ID0gYWxsQ29uZmlncy5sb2FkRW50aXRpZXMhO1xuXG4gIGNvbnN0IHNvcnRSZW1vdGUgPSBhbGxDb25maWdzLnNvcnQ/LnJlbW90ZTtcbiAgY29uc3QgcGFnaW5hdGlvbkNhY2hlVHlwZSA9IGFsbENvbmZpZ3MucGFnaW5hdGlvbj8uY2FjaGVUeXBlO1xuXG4gIHJldHVybiBjcmVhdGVSZWR1Y2VyKFxuICAgIGluaXRpYWxTdGF0ZSxcbiAgICBvbihhbGxBY3Rpb25zLnNlbGVjdEVudGl0eSwgKHN0YXRlLCB7IGlkIH0pID0+XG4gICAgICBhbGxNdXRhdG9ycy5zZWxlY3RFbnRpdHkoaWQsIHN0YXRlKVxuICAgICksXG4gICAgb24oYWxsQWN0aW9ucy5kZXNlbGVjdEVudGl0eSwgKHN0YXRlKSA9PiBhbGxNdXRhdG9ycy5kZXNlbGVjdEVudGl0eShzdGF0ZSkpLFxuICAgIG9uKGFsbEFjdGlvbnMudG9nZ2xlU2VsZWN0RW50aXR5LCAoc3RhdGUsIHsgaWQgfSkgPT5cbiAgICAgIGFsbE11dGF0b3JzLnRvZ2dsZVNlbGVjdEVudGl0eShpZCwgc3RhdGUpXG4gICAgKSxcbiAgICAuLi5pbnNlcnRJZjxTPihhbGxBY3Rpb25zLnJlbW92ZUFsbEVudGl0aWVzLCAoKSA9PlxuICAgICAgb24oYWxsQWN0aW9ucy5yZW1vdmVBbGxFbnRpdGllcywgKHN0YXRlKSA9PlxuICAgICAgICBhbGxNdXRhdG9ycy5kZXNlbGVjdEVudGl0eShzdGF0ZSlcbiAgICAgIClcbiAgICApLFxuICAgIC4uLmluc2VydElmPFM+KHNvcnRSZW1vdGUsICgpID0+XG4gICAgICBvbihhbGxBY3Rpb25zLnNvcnRFbnRpdGllcywgKHN0YXRlKSA9PiBhbGxNdXRhdG9ycy5kZXNlbGVjdEVudGl0eShzdGF0ZSkpXG4gICAgKSxcbiAgICAuLi5pbnNlcnRJZjxTPihhbGxBY3Rpb25zLmZpbHRlckVudGl0aWVzLCAoKSA9PlxuICAgICAgb24oYWxsQWN0aW9ucy5maWx0ZXJFbnRpdGllcywgKHN0YXRlKSA9PlxuICAgICAgICBhbGxNdXRhdG9ycy5kZXNlbGVjdEVudGl0eShzdGF0ZSlcbiAgICAgIClcbiAgICApLFxuICAgIC4uLmluc2VydElmPFM+KCFhbGxBY3Rpb25zLmxvYWRFbnRpdGllc1BhZ2VTdWNjZXNzLCAoKSA9PlxuICAgICAgb24oYWxsQWN0aW9ucy5sb2FkRW50aXRpZXNTdWNjZXNzLCAoc3RhdGUpID0+XG4gICAgICAgIGFsbE11dGF0b3JzLmRlc2VsZWN0RW50aXR5KHN0YXRlKVxuICAgICAgKVxuICAgICksXG4gICAgLi4uaW5zZXJ0SWY8Uz4oXG4gICAgICAhIWFsbEFjdGlvbnMubG9hZEVudGl0aWVzUGFnZVN1Y2Nlc3MgJiYgcGFnaW5hdGlvbkNhY2hlVHlwZSA9PT0gJ3BhcnRpYWwnLFxuICAgICAgKCkgPT5cbiAgICAgICAgb24oYWxsQWN0aW9ucy5sb2FkRW50aXRpZXNQYWdlU3VjY2VzcywgKHN0YXRlKSA9PlxuICAgICAgICAgIGFsbE11dGF0b3JzLmRlc2VsZWN0RW50aXR5KHN0YXRlKVxuICAgICAgICApXG4gICAgKSxcbiAgICAuLi5pbnNlcnRJZjxTPihhbGxBY3Rpb25zLnJlbW92ZUVudGl0aWVzLCAoKSA9PlxuICAgICAgb24oYWxsQWN0aW9ucy5yZW1vdmVFbnRpdGllcywgKHN0YXRlLCB7IGtleXMgfSkgPT4ge1xuICAgICAgICBjb25zdCBzaG91bGREZXNlbGVjdCA9IGtleXMuc29tZShcbiAgICAgICAgICAodjogc3RyaW5nIHwgbnVtYmVyKSA9PiB2ID09PSBzdGF0ZS5zZWxlY3RlZElkXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBzaG91bGREZXNlbGVjdFxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWRJZDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDogc3RhdGU7XG4gICAgICB9KVxuICAgICksXG4gICAgLi4uaW5zZXJ0SWY8Uz4oYWxsQWN0aW9ucy51cGRhdGVFbnRpdGllcywgKCkgPT5cbiAgICAgIG9uKGFsbEFjdGlvbnMudXBkYXRlRW50aXRpZXMsIChzdGF0ZSwgeyB1cGRhdGVzIH0pID0+IHtcbiAgICAgICAgY29uc3QgY2hhbmdlID0gdXBkYXRlcy5maW5kKCh1cGRhdGVkKSA9PiB7XG4gICAgICAgICAgY29uc3QgaWQgPSBhZGFwdGVyLnNlbGVjdElkKHVwZGF0ZWQuY2hhbmdlcyBhcyBFbnRpdHkpO1xuICAgICAgICAgIHJldHVybiBpZCAmJiBpZCAhPT0gdXBkYXRlZC5pZCAmJiBzdGF0ZS5zZWxlY3RlZElkID09PSB1cGRhdGVkLmlkO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGNoYW5nZVxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWRJZDogYWRhcHRlci5zZWxlY3RJZChjaGFuZ2UuY2hhbmdlcyBhcyBFbnRpdHkpLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDogc3RhdGU7XG4gICAgICB9KVxuICAgIClcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export function createSelectEntityTraitSelectors() {
|
|
2
|
-
function selectEntityIdSelected(state) {
|
|
3
|
-
return state.selectedId;
|
|
4
|
-
}
|
|
5
|
-
function selectEntitySelected(state) {
|
|
6
|
-
return (state.selectedId && state.entities[state.selectedId]) || undefined;
|
|
7
|
-
}
|
|
8
|
-
return {
|
|
9
|
-
selectEntityIdSelected,
|
|
10
|
-
selectEntitySelected,
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudGl0eS50cmFpdC5zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25ncngtdHJhaXRzL2NvbW1vbi9zcmMvbGliL3NlbGVjdC1lbnRpdHkvc2VsZWN0LWVudGl0eS50cmFpdC5zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsTUFBTSxVQUFVLGdDQUFnQztJQUc5QyxTQUFTLHNCQUFzQixDQUFDLEtBQXdCO1FBQ3RELE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUMxQixDQUFDO0lBQ0QsU0FBUyxvQkFBb0IsQ0FDM0IsS0FBb0Q7UUFFcEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUM7SUFDN0UsQ0FBQztJQUVELE9BQU87UUFDTCxzQkFBc0I7UUFDdEIsb0JBQW9CO0tBQ3JCLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2VsZWN0RW50aXR5U2VsZWN0b3JzLFxuICBTZWxlY3RFbnRpdHlTdGF0ZSxcbn0gZnJvbSAnLi9zZWxlY3QtZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IExvYWRFbnRpdGllc1N0YXRlIH0gZnJvbSAnLi4vbG9hZC1lbnRpdGllcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZWxlY3RFbnRpdHlUcmFpdFNlbGVjdG9yczxcbiAgRW50aXR5XG4+KCk6IFNlbGVjdEVudGl0eVNlbGVjdG9yczxFbnRpdHk+IHtcbiAgZnVuY3Rpb24gc2VsZWN0RW50aXR5SWRTZWxlY3RlZChzdGF0ZTogU2VsZWN0RW50aXR5U3RhdGUpIHtcbiAgICByZXR1cm4gc3RhdGUuc2VsZWN0ZWRJZDtcbiAgfVxuICBmdW5jdGlvbiBzZWxlY3RFbnRpdHlTZWxlY3RlZDxFbnRpdHk+KFxuICAgIHN0YXRlOiBMb2FkRW50aXRpZXNTdGF0ZTxFbnRpdHk+ICYgU2VsZWN0RW50aXR5U3RhdGVcbiAgKSB7XG4gICAgcmV0dXJuIChzdGF0ZS5zZWxlY3RlZElkICYmIHN0YXRlLmVudGl0aWVzW3N0YXRlLnNlbGVjdGVkSWRdKSB8fCB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHNlbGVjdEVudGl0eUlkU2VsZWN0ZWQsXG4gICAgc2VsZWN0RW50aXR5U2VsZWN0ZWQsXG4gIH07XG59XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './set-entity.model';
|
|
2
|
-
export * from './set-entity.trait';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25ncngtdHJhaXRzL2NvbW1vbi9zcmMvbGliL3NldC1lbnRpdHkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZXQtZW50aXR5Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2V0LWVudGl0eS50cmFpdCc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWVudGl0eS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc2V0LWVudGl0eS9zZXQtZW50aXR5Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb3N0Zml4UHJvcHMgfSBmcm9tICdAbmdyeC10cmFpdHMvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBBY3Rpb25DcmVhdG9yIH0gZnJvbSAnQG5ncngvc3RvcmUvc3JjL21vZGVscyc7XG5cbnR5cGUgU2V0QWN0aW9uczxUPiA9IHtcbiAgLyoqXG4gICAqIHNldCBlbnRpdHkgaW4gdGhlIHN0b3JlXG4gICAqL1xuICBzZXQ6IEFjdGlvbkNyZWF0b3I8c3RyaW5nLCAocHJvcHM6IFQpID0+IEFjdGlvbjxzdHJpbmc+Pjtcbn07XG5leHBvcnQgdHlwZSBTZXRFbnRpdHlBY3Rpb25zPEVudGl0eSwgSiBleHRlbmRzIHN0cmluZz4gPSBQb3N0Zml4UHJvcHM8XG4gIFNldEFjdGlvbnM8RW50aXR5PixcbiAgSlxuPjtcblxuZXhwb3J0IHR5cGUgU2V0RW50aXR5U3RhdGU8RW50aXR5LCBKIGV4dGVuZHMgc3RyaW5nPiA9IHtcbiAgW2tleSBpbiBgJHtKfWBdPzogRW50aXR5O1xufTtcblxuZXhwb3J0IHR5cGUgU2V0RW50aXR5U2VsZWN0b3JzPEVudGl0eSwgSiBleHRlbmRzIHN0cmluZz4gPSBQb3N0Zml4UHJvcHM8XG4gIHtcbiAgICBzZWxlY3Q6IChzdGF0ZTogU2V0RW50aXR5U3RhdGU8RW50aXR5LCBKPikgPT4gRW50aXR5O1xuICB9LFxuICBKXG4+O1xuIl19
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { capitalize, createTraitFactory, } from '@ngrx-traits/core';
|
|
2
|
-
import { createAction, createReducer, on } from '@ngrx/store';
|
|
3
|
-
/**
|
|
4
|
-
* Generates ngrx code needed to set and entity in the store state
|
|
5
|
-
* @param entityName - Entity name, should be in camel case
|
|
6
|
-
* @param options.actionProps - param for the main request action,
|
|
7
|
-
* use the props() function for its value
|
|
8
|
-
* @returns the trait factory
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
*
|
|
12
|
-
* export interface TestState
|
|
13
|
-
* extends SetEntityState<Client,'client'>{}
|
|
14
|
-
*
|
|
15
|
-
* const traits = createEntityFeatureFactory(
|
|
16
|
-
* addSetEntityTraits({
|
|
17
|
-
* entityName: 'client',
|
|
18
|
-
* actionProps: props<{ client: Client }
|
|
19
|
-
* }),
|
|
20
|
-
* )({
|
|
21
|
-
* actionsGroupKey: 'Client',
|
|
22
|
-
* featureSelector: createFeatureSelector<
|
|
23
|
-
* SetEntityState<Client, 'client'>
|
|
24
|
-
* >('client'),
|
|
25
|
-
* });
|
|
26
|
-
* // adds following props to the state:
|
|
27
|
-
* // client?: Client;
|
|
28
|
-
*
|
|
29
|
-
* // generated actions
|
|
30
|
-
* traits.actions.setClient({client: {id:123, name: 'gabs'}});
|
|
31
|
-
* //generated selectors
|
|
32
|
-
* traits.selectors.selectClient()
|
|
33
|
-
*/
|
|
34
|
-
export function addSetEntityTrait({ entityName, actionProps, }) {
|
|
35
|
-
const capitalizedName = capitalize(entityName);
|
|
36
|
-
return createTraitFactory({
|
|
37
|
-
key: `load${capitalizedName}`,
|
|
38
|
-
config: { entityName, actionProps },
|
|
39
|
-
actions: ({ actionsGroupKey }) => {
|
|
40
|
-
const setEntity = createAction(`${actionsGroupKey} Set ${capitalizedName}`, actionProps);
|
|
41
|
-
return {
|
|
42
|
-
[`set${capitalizedName}`]: setEntity,
|
|
43
|
-
};
|
|
44
|
-
},
|
|
45
|
-
selectors: () => {
|
|
46
|
-
function selectEntity(state) {
|
|
47
|
-
return state[`${entityName}`];
|
|
48
|
-
}
|
|
49
|
-
return {
|
|
50
|
-
[`select${capitalizedName}`]: selectEntity,
|
|
51
|
-
};
|
|
52
|
-
},
|
|
53
|
-
initialState: ({ previousInitialState }) => previousInitialState,
|
|
54
|
-
reducer: ({ initialState, allActions }) => {
|
|
55
|
-
return createReducer(initialState, on(allActions[`set${capitalizedName}`], (state, action) => ({
|
|
56
|
-
...state,
|
|
57
|
-
[entityName]: action[entityName],
|
|
58
|
-
})));
|
|
59
|
-
},
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWVudGl0eS50cmFpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc2V0LWVudGl0eS9zZXQtZW50aXR5LnRyYWl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1Ysa0JBQWtCLEdBRW5CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBWTlEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBSy9CLEVBQ0EsVUFBVSxFQUNWLFdBQVcsR0FJWjtJQUNDLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUUvQyxPQUFPLGtCQUFrQixDQUFDO1FBQ3hCLEdBQUcsRUFBRSxPQUFPLGVBQWUsRUFBRTtRQUM3QixNQUFNLEVBQUUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFO1FBQ25DLE9BQU8sRUFBRSxDQUFDLEVBQUUsZUFBZSxFQUE2QixFQUFFLEVBQUU7WUFDMUQsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUM1QixHQUFHLGVBQWUsUUFBUSxlQUFlLEVBQUUsRUFDM0MsV0FBa0IsQ0FDbkIsQ0FBQztZQUVGLE9BQU87Z0JBQ0wsQ0FBQyxNQUFNLGVBQWUsRUFBRSxDQUFDLEVBQUUsU0FBUzthQUNMLENBQUM7UUFDcEMsQ0FBQztRQUNELFNBQVMsRUFBRSxHQUFHLEVBQUU7WUFDZCxTQUFTLFlBQVksQ0FBQyxLQUFZO2dCQUNoQyxPQUFRLEtBQWEsQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFXLENBQUM7WUFDbkQsQ0FBQztZQUVELE9BQU87Z0JBQ0wsQ0FBQyxTQUFTLGVBQWUsRUFBRSxDQUFDLEVBQUUsWUFBWTthQUNWLENBQUM7UUFDckMsQ0FBQztRQUNELFlBQVksRUFBRSxDQUFDLEVBQUUsb0JBQW9CLEVBQWtDLEVBQUUsRUFBRSxDQUN6RSxvQkFBNkI7UUFDL0IsT0FBTyxFQUFFLENBQUMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRTtZQUN4QyxPQUFPLGFBQWEsQ0FDbEIsWUFBWSxFQUNaLEVBQUUsQ0FDQyxVQUFrQixDQUFDLE1BQU0sZUFBZSxFQUFFLENBQUMsRUFDNUMsQ0FBQyxLQUFVLEVBQUUsTUFBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUM1QixHQUFHLEtBQUs7Z0JBQ1IsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDO2FBQ2pDLENBQUMsQ0FDSCxDQUNGLENBQUM7UUFDSixDQUFDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNhcGl0YWxpemUsXG4gIGNyZWF0ZVRyYWl0RmFjdG9yeSxcbiAgVHJhaXRBY3Rpb25zRmFjdG9yeUNvbmZpZyxcbn0gZnJvbSAnQG5ncngtdHJhaXRzL2NvcmUnO1xuaW1wb3J0IHsgY3JlYXRlQWN0aW9uLCBjcmVhdGVSZWR1Y2VyLCBvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHtcbiAgU2V0RW50aXR5QWN0aW9ucyxcbiAgU2V0RW50aXR5U2VsZWN0b3JzLFxuICBTZXRFbnRpdHlTdGF0ZSxcbn0gZnJvbSAnLi9zZXQtZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IFRyYWl0SW5pdGlhbFN0YXRlRmFjdG9yeUNvbmZpZyB9IGZyb20gJ0BuZ3J4LXRyYWl0cy9jb3JlJztcbmltcG9ydCB7IEFjdGlvbkNyZWF0b3JQcm9wcyB9IGZyb20gJ0BuZ3J4L3N0b3JlL3NyYy9tb2RlbHMnO1xuXG50eXBlIFJlY29yZEVudGl0eTxUPiA9IFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBpbmZlciBKPiA/IEogOiBuZXZlcjtcblxuLyoqXG4gKiBHZW5lcmF0ZXMgbmdyeCBjb2RlIG5lZWRlZCB0byBzZXQgYW5kIGVudGl0eSBpbiB0aGUgc3RvcmUgc3RhdGVcbiAqIEBwYXJhbSBlbnRpdHlOYW1lIC0gRW50aXR5IG5hbWUsIHNob3VsZCBiZSBpbiBjYW1lbCBjYXNlXG4gKiBAcGFyYW0gb3B0aW9ucy5hY3Rpb25Qcm9wcyAtIHBhcmFtIGZvciB0aGUgbWFpbiByZXF1ZXN0IGFjdGlvbixcbiAqIHVzZSB0aGUgcHJvcHMoKSBmdW5jdGlvbiBmb3IgaXRzIHZhbHVlXG4gKiBAcmV0dXJucyB0aGUgdHJhaXQgZmFjdG9yeVxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogZXhwb3J0IGludGVyZmFjZSBUZXN0U3RhdGVcbiAqIGV4dGVuZHMgU2V0RW50aXR5U3RhdGU8Q2xpZW50LCdjbGllbnQnPnt9XG4gKlxuICogY29uc3QgdHJhaXRzID0gY3JlYXRlRW50aXR5RmVhdHVyZUZhY3RvcnkoXG4gKiBhZGRTZXRFbnRpdHlUcmFpdHMoe1xuICogICAgICAgIGVudGl0eU5hbWU6ICdjbGllbnQnLFxuICogICAgICAgIGFjdGlvblByb3BzOiBwcm9wczx7IGNsaWVudDogQ2xpZW50IH1cbiAqICAgICAgfSksXG4gKiApKHtcbiAqICAgICAgYWN0aW9uc0dyb3VwS2V5OiAnQ2xpZW50JyxcbiAqICAgICAgZmVhdHVyZVNlbGVjdG9yOiBjcmVhdGVGZWF0dXJlU2VsZWN0b3I8XG4gKiAgICAgICAgU2V0RW50aXR5U3RhdGU8Q2xpZW50LCAnY2xpZW50Jz5cbiAqICAgICAgICA+KCdjbGllbnQnKSxcbiAqICAgIH0pO1xuICogLy8gICBhZGRzIGZvbGxvd2luZyBwcm9wcyB0byB0aGUgc3RhdGU6XG4gKiAvLyAgICBjbGllbnQ/OiBDbGllbnQ7XG4gKlxuICogLy8gZ2VuZXJhdGVkIGFjdGlvbnNcbiAqIHRyYWl0cy5hY3Rpb25zLnNldENsaWVudCh7Y2xpZW50OiB7aWQ6MTIzLCBuYW1lOiAnZ2Ficyd9fSk7XG4gKiAvL2dlbmVyYXRlZCBzZWxlY3RvcnNcbiAqIHRyYWl0cy5zZWxlY3RvcnMuc2VsZWN0Q2xpZW50KClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFkZFNldEVudGl0eVRyYWl0PFxuICBKIGV4dGVuZHMgc3RyaW5nLFxuICBQYXlsb2FkIGV4dGVuZHMgUmVjb3JkPEosIGFueT4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQsXG4gIEVudGl0eSA9IFJlY29yZEVudGl0eTxQYXlsb2FkPixcbiAgU3RhdGUgZXh0ZW5kcyBTZXRFbnRpdHlTdGF0ZTxFbnRpdHksIEo+PSBTZXRFbnRpdHlTdGF0ZTxFbnRpdHksIEo+XG4+KHtcbiAgZW50aXR5TmFtZSxcbiAgYWN0aW9uUHJvcHMsXG59OiB7XG4gIGVudGl0eU5hbWU6IEo7XG4gIGFjdGlvblByb3BzPzogQWN0aW9uQ3JlYXRvclByb3BzPFBheWxvYWQ+O1xufSkge1xuICBjb25zdCBjYXBpdGFsaXplZE5hbWUgPSBjYXBpdGFsaXplKGVudGl0eU5hbWUpO1xuXG4gIHJldHVybiBjcmVhdGVUcmFpdEZhY3Rvcnkoe1xuICAgIGtleTogYGxvYWQke2NhcGl0YWxpemVkTmFtZX1gLFxuICAgIGNvbmZpZzogeyBlbnRpdHlOYW1lLCBhY3Rpb25Qcm9wcyB9LFxuICAgIGFjdGlvbnM6ICh7IGFjdGlvbnNHcm91cEtleSB9OiBUcmFpdEFjdGlvbnNGYWN0b3J5Q29uZmlnKSA9PiB7XG4gICAgICBjb25zdCBzZXRFbnRpdHkgPSBjcmVhdGVBY3Rpb24oXG4gICAgICAgIGAke2FjdGlvbnNHcm91cEtleX0gU2V0ICR7Y2FwaXRhbGl6ZWROYW1lfWAsXG4gICAgICAgIGFjdGlvblByb3BzIGFzIGFueVxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW2BzZXQke2NhcGl0YWxpemVkTmFtZX1gXTogc2V0RW50aXR5LFxuICAgICAgfSBhcyBTZXRFbnRpdHlBY3Rpb25zPFBheWxvYWQsIEo+O1xuICAgIH0sXG4gICAgc2VsZWN0b3JzOiAoKSA9PiB7XG4gICAgICBmdW5jdGlvbiBzZWxlY3RFbnRpdHkoc3RhdGU6IFN0YXRlKSB7XG4gICAgICAgIHJldHVybiAoc3RhdGUgYXMgYW55KVtgJHtlbnRpdHlOYW1lfWBdIGFzIEVudGl0eTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW2BzZWxlY3Qke2NhcGl0YWxpemVkTmFtZX1gXTogc2VsZWN0RW50aXR5LFxuICAgICAgfSBhcyBTZXRFbnRpdHlTZWxlY3RvcnM8RW50aXR5LCBKPjtcbiAgICB9LFxuICAgIGluaXRpYWxTdGF0ZTogKHsgcHJldmlvdXNJbml0aWFsU3RhdGUgfTogVHJhaXRJbml0aWFsU3RhdGVGYWN0b3J5Q29uZmlnKSA9PlxuICAgICAgcHJldmlvdXNJbml0aWFsU3RhdGUgYXMgU3RhdGUsXG4gICAgcmVkdWNlcjogKHsgaW5pdGlhbFN0YXRlLCBhbGxBY3Rpb25zIH0pID0+IHtcbiAgICAgIHJldHVybiBjcmVhdGVSZWR1Y2VyKFxuICAgICAgICBpbml0aWFsU3RhdGUsXG4gICAgICAgIG9uKFxuICAgICAgICAgIChhbGxBY3Rpb25zIGFzIGFueSlbYHNldCR7Y2FwaXRhbGl6ZWROYW1lfWBdLFxuICAgICAgICAgIChzdGF0ZTogYW55LCBhY3Rpb246IGFueSkgPT4gKHtcbiAgICAgICAgICAgIC4uLnN0YXRlLFxuICAgICAgICAgICAgW2VudGl0eU5hbWVdOiBhY3Rpb25bZW50aXR5TmFtZV0sXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9LFxuICB9KTtcbn1cbiJdfQ==
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './sort-entities.model';
|
|
2
|
-
export * from './sort-entities.trait';
|
|
3
|
-
export * from './sort-entities.utils';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25ncngtdHJhaXRzL2NvbW1vbi9zcmMvbGliL3NvcnQtZW50aXRpZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NvcnQtZW50aXRpZXMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zb3J0LWVudGl0aWVzLnRyYWl0JztcbmV4cG9ydCAqIGZyb20gJy4vc29ydC1lbnRpdGllcy51dGlscyc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export const sortTraitKey = 'sort';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc29ydC1lbnRpdGllcy9zb3J0LWVudGl0aWVzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDQSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5ZWRDb25maWcgfSBmcm9tICdAbmdyeC10cmFpdHMvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBBY3Rpb25DcmVhdG9yIH0gZnJvbSAnQG5ncngvc3RvcmUvc3JjL21vZGVscyc7XG5cbmltcG9ydCB7IExvYWRFbnRpdGllc1N0YXRlIH0gZnJvbSAnLi4vbG9hZC1lbnRpdGllcy9sb2FkLWVudGl0aWVzLm1vZGVsJztcblxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTb3J0RGlyZWN0aW9uID0gJ2FzYycgfCAnZGVzYycgfCAnJztcblxuZXhwb3J0IGludGVyZmFjZSBTb3J0PFQ+IHtcbiAgLyoqIFRoZSBpZCBvZiB0aGUgY29sdW1uIGJlaW5nIHNvcnRlZC4gKi9cbiAgYWN0aXZlOiBrZXlvZiBUO1xuICAvKiogVGhlIHNvcnQgZGlyZWN0aW9uLiAqL1xuICBkaXJlY3Rpb246IFNvcnREaXJlY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29ydEVudGl0aWVzU3RhdGU8VD4ge1xuICBzb3J0OiB7XG4gICAgY3VycmVudDogU29ydDxUPjtcbiAgICBkZWZhdWx0OiBTb3J0PFQ+O1xuICB9O1xufVxuXG5leHBvcnQgdHlwZSBTb3J0RW50aXRpZXNBY3Rpb25zPFQ+ID0ge1xuICBzb3J0RW50aXRpZXM6IEFjdGlvbkNyZWF0b3I8XG4gICAgc3RyaW5nLFxuICAgIChwcm9wczogU29ydDxUPikgPT4gU29ydDxUPiAmIEFjdGlvbjxzdHJpbmc+XG4gID47XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkZWZhdWx0IHNvcnQgYmFja1xuICAgKi9cbiAgcmVzZXRFbnRpdGllc1NvcnQ6IEFjdGlvbkNyZWF0b3I8c3RyaW5nLCAoKSA9PiBBY3Rpb248c3RyaW5nPj47XG59O1xuXG5leHBvcnQgdHlwZSBTb3J0RW50aXRpZXNTZWxlY3RvcnM8VD4gPSB7XG4gIHNlbGVjdEVudGl0aWVzU29ydDogKFxuICAgIHN0YXRlOiBMb2FkRW50aXRpZXNTdGF0ZTxUPiAmIFNvcnRFbnRpdGllc1N0YXRlPFQ+LFxuICApID0+IFNvcnQ8VD47XG59O1xuXG5leHBvcnQgdHlwZSBTb3J0RW50aXRpZXNNdXRhdG9yczxUPiA9IHtcbiAgc29ydEVudGl0aWVzPFMgZXh0ZW5kcyBMb2FkRW50aXRpZXNTdGF0ZTxUPiAmIFNvcnRFbnRpdGllc1N0YXRlPFQ+PihcbiAgICB7IGFjdGl2ZSwgZGlyZWN0aW9uIH06IFNvcnQ8VD4sXG4gICAgc3RhdGU6IFMsXG4gICk6IFM7XG59O1xuXG5leHBvcnQgY29uc3Qgc29ydFRyYWl0S2V5ID0gJ3NvcnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNvcnRFbnRpdGllc0NvbmZpZzxUPiB7XG4gIGRlZmF1bHRTb3J0OiBTb3J0PFQ+O1xuICByZW1vdGU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIFNvcnRFbnRpdGllc0tleWVkQ29uZmlnPFQ+ID0gS2V5ZWRDb25maWc8XG4gIHR5cGVvZiBzb3J0VHJhaXRLZXksXG4gIFNvcnRFbnRpdGllc0NvbmZpZzxUPlxuPjtcbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { createAction, props } from '@ngrx/store';
|
|
2
|
-
export function createSortTraitActions(actionsGroupKey, entitiesName) {
|
|
3
|
-
return {
|
|
4
|
-
sortEntities: createAction(`${actionsGroupKey} Sort ${entitiesName}`, props()),
|
|
5
|
-
resetEntitiesSort: createAction(`${actionsGroupKey} Reset ${entitiesName} Sort`),
|
|
6
|
-
};
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy50cmFpdC5hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ3J4LXRyYWl0cy9jb21tb24vc3JjL2xpYi9zb3J0LWVudGl0aWVzL3NvcnQtZW50aXRpZXMudHJhaXQuYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUdsRCxNQUFNLFVBQVUsc0JBQXNCLENBQ3BDLGVBQXVCLEVBQ3ZCLFlBQW9CO0lBRXBCLE9BQU87UUFDTCxZQUFZLEVBQUUsWUFBWSxDQUN4QixHQUFHLGVBQWUsU0FBUyxZQUFZLEVBQUUsRUFDekMsS0FBSyxFQUFnQixDQUN0QjtRQUNELGlCQUFpQixFQUFFLFlBQVksQ0FDN0IsR0FBRyxlQUFlLFVBQVUsWUFBWSxPQUFPLENBQ2hEO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgU29ydCwgU29ydEVudGl0aWVzQWN0aW9ucyB9IGZyb20gJy4vc29ydC1lbnRpdGllcy5tb2RlbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTb3J0VHJhaXRBY3Rpb25zPEVudGl0eT4oXG4gIGFjdGlvbnNHcm91cEtleTogc3RyaW5nLFxuICBlbnRpdGllc05hbWU6IHN0cmluZ1xuKTogU29ydEVudGl0aWVzQWN0aW9uczxFbnRpdHk+IHtcbiAgcmV0dXJuIHtcbiAgICBzb3J0RW50aXRpZXM6IGNyZWF0ZUFjdGlvbihcbiAgICAgIGAke2FjdGlvbnNHcm91cEtleX0gU29ydCAke2VudGl0aWVzTmFtZX1gLFxuICAgICAgcHJvcHM8U29ydDxFbnRpdHk+PigpXG4gICAgKSxcbiAgICByZXNldEVudGl0aWVzU29ydDogY3JlYXRlQWN0aW9uKFxuICAgICAgYCR7YWN0aW9uc0dyb3VwS2V5fSBSZXNldCAke2VudGl0aWVzTmFtZX0gU29ydGBcbiAgICApLFxuICB9O1xufVxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { TraitEffect } from '@ngrx-traits/core';
|
|
3
|
-
import { createEffect, ofType } from '@ngrx/effects';
|
|
4
|
-
import { concatMap } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export function createSortTraitEffect(allActions, allConfigs) {
|
|
7
|
-
const { remote } = allConfigs.sort;
|
|
8
|
-
class SortEffect extends TraitEffect {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.remoteSort$ = createEffect(() => {
|
|
12
|
-
return this.actions$.pipe(ofType(allActions.sortEntities, allActions.resetEntitiesSort), concatMap(() => allActions.loadEntitiesFirstPage
|
|
13
|
-
? [
|
|
14
|
-
allActions.clearEntitiesPagesCache(),
|
|
15
|
-
allActions.loadEntitiesFirstPage(),
|
|
16
|
-
]
|
|
17
|
-
: [allActions.loadEntities()]));
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: SortEffect, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
21
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: SortEffect }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: SortEffect, decorators: [{
|
|
24
|
-
type: Injectable
|
|
25
|
-
}] });
|
|
26
|
-
return remote ? [SortEffect] : [];
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy50cmFpdC5lZmZlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25ncngtdHJhaXRzL2NvbW1vbi9zcmMvbGliL3NvcnQtZW50aXRpZXMvc29ydC1lbnRpdGllcy50cmFpdC5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVkzQyxNQUFNLFVBQVUscUJBQXFCLENBQ25DLFVBRTJCLEVBQzNCLFVBQTZFO0lBRTdFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsSUFBSyxDQUFDO0lBRXBDLE1BQ00sVUFBVyxTQUFRLFdBQVc7UUFEcEM7O1lBRUUsZ0JBQVcsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFO2dCQUM5QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUN2QixNQUFNLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsaUJBQWlCLENBQUMsRUFDN0QsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUNiLFVBQVUsQ0FBQyxxQkFBcUI7b0JBQzlCLENBQUMsQ0FBQzt3QkFDRSxVQUFVLENBQUMsdUJBQXVCLEVBQUU7d0JBQ3BDLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRTtxQkFDbkM7b0JBQ0gsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQ2hDLENBQ0YsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1NBQ0o7a0hBZEssVUFBVTtzSEFBVixVQUFVOzsrRkFBVixVQUFVO3NCQURmLFVBQVU7O0lBZ0JYLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Q0FDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFpdEVmZmVjdCB9IGZyb20gJ0BuZ3J4LXRyYWl0cy9jb3JlJztcbmltcG9ydCB7IGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBjb25jYXRNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQG5ncngtdHJhaXRzL2NvcmUnO1xuaW1wb3J0IHtcbiAgTG9hZEVudGl0aWVzQWN0aW9ucyxcbiAgTG9hZEVudGl0aWVzS2V5ZWRDb25maWcsXG59IGZyb20gJy4uL2xvYWQtZW50aXRpZXMvbG9hZC1lbnRpdGllcy5tb2RlbCc7XG5pbXBvcnQge1xuICBTb3J0RW50aXRpZXNBY3Rpb25zLFxuICBTb3J0RW50aXRpZXNLZXllZENvbmZpZyxcbn0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLm1vZGVsJztcbmltcG9ydCB7IEVudGl0aWVzUGFnaW5hdGlvbkFjdGlvbnMgfSBmcm9tICcuLi9lbnRpdGllcy1wYWdpbmF0aW9uL2VudGl0aWVzLXBhZ2luYXRpb24ubW9kZWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU29ydFRyYWl0RWZmZWN0PEVudGl0eT4oXG4gIGFsbEFjdGlvbnM6IExvYWRFbnRpdGllc0FjdGlvbnM8RW50aXR5PiAmXG4gICAgU29ydEVudGl0aWVzQWN0aW9uczxFbnRpdHk+ICZcbiAgICBFbnRpdGllc1BhZ2luYXRpb25BY3Rpb25zLFxuICBhbGxDb25maWdzOiBMb2FkRW50aXRpZXNLZXllZENvbmZpZzxFbnRpdHk+ICYgU29ydEVudGl0aWVzS2V5ZWRDb25maWc8RW50aXR5PlxuKTogVHlwZTxUcmFpdEVmZmVjdD5bXSB7XG4gIGNvbnN0IHsgcmVtb3RlIH0gPSBhbGxDb25maWdzLnNvcnQhO1xuXG4gIEBJbmplY3RhYmxlKClcbiAgY2xhc3MgU29ydEVmZmVjdCBleHRlbmRzIFRyYWl0RWZmZWN0IHtcbiAgICByZW1vdGVTb3J0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoYWxsQWN0aW9ucy5zb3J0RW50aXRpZXMsIGFsbEFjdGlvbnMucmVzZXRFbnRpdGllc1NvcnQpLFxuICAgICAgICBjb25jYXRNYXAoKCkgPT5cbiAgICAgICAgICBhbGxBY3Rpb25zLmxvYWRFbnRpdGllc0ZpcnN0UGFnZVxuICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgYWxsQWN0aW9ucy5jbGVhckVudGl0aWVzUGFnZXNDYWNoZSgpLFxuICAgICAgICAgICAgICAgIGFsbEFjdGlvbnMubG9hZEVudGl0aWVzRmlyc3RQYWdlKCksXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIDogW2FsbEFjdGlvbnMubG9hZEVudGl0aWVzKCldXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIHJlbW90ZSA/IFtTb3J0RWZmZWN0XSA6IFtdO1xufVxuIl19
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { createSortTraitMutators } from './sort-entities.trait.mutators';
|
|
2
|
-
import { createSortInitialState, createSortTraitReducer, } from './sort-entities.trait.reducer';
|
|
3
|
-
import { createSortTraitSelectors } from './sort-entities.trait.selectors';
|
|
4
|
-
import { createSortTraitEffect } from './sort-entities.trait.effect';
|
|
5
|
-
import { sortTraitKey, } from './sort-entities.model';
|
|
6
|
-
import { loadEntitiesTraitKey, } from '../load-entities/load-entities.model';
|
|
7
|
-
import { createTraitFactory } from '@ngrx-traits/core';
|
|
8
|
-
import { createSortTraitActions } from './sort-entities.trait.actions';
|
|
9
|
-
/**
|
|
10
|
-
* Generates ngrx code to sort locally or remotely a list of entities
|
|
11
|
-
* @param config
|
|
12
|
-
* @param config.defaultSort - Required field, Default entity prop for the sort
|
|
13
|
-
* @param config.remote - Required field, default to false, when true disables local
|
|
14
|
-
* sorting and every sort action call will now trigger a loadEntities action and the backend
|
|
15
|
-
* should sort the data, use selectSort in the effect that call backend to get the requested sort,
|
|
16
|
-
* when false all sorting is done in memory when the sort action is fired
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* // The following trait config
|
|
20
|
-
* export interface TestState
|
|
21
|
-
* extends EntityAndStatusState<Todo>, SortState<Todo>{}
|
|
22
|
-
*
|
|
23
|
-
* const traits = createEntityFeatureFactory(
|
|
24
|
-
* {entityName: 'Todo'},
|
|
25
|
-
* addLoadEntitiesTrait<Todo>(),
|
|
26
|
-
* addSortEntitiesTrait<Todo>({
|
|
27
|
-
* remote: true,
|
|
28
|
-
* defaultSort: {active:'id', direction:'asc'}
|
|
29
|
-
* })
|
|
30
|
-
* )({
|
|
31
|
-
* actionsGroupKey: '[Todos]',
|
|
32
|
-
* featureSelector: createFeatureSelector<TestState>>(
|
|
33
|
-
* 'todos',
|
|
34
|
-
* ),
|
|
35
|
-
* });
|
|
36
|
-
* // adds following props to the state:
|
|
37
|
-
* // sort: {
|
|
38
|
-
* // current: Sort<Todo>;
|
|
39
|
-
* // default: Sort<Todo>;
|
|
40
|
-
* // }
|
|
41
|
-
*
|
|
42
|
-
* // generated actions
|
|
43
|
-
* traits.actions.sortTodos({active:'id', direction:'desc'})
|
|
44
|
-
* traits.actions.resetTodosSort()
|
|
45
|
-
* //generated selectors
|
|
46
|
-
* traits.selectors.selectTodosSort()
|
|
47
|
-
*/
|
|
48
|
-
export function addSortEntitiesTrait({ remote, defaultSort, }) {
|
|
49
|
-
return createTraitFactory({
|
|
50
|
-
key: sortTraitKey,
|
|
51
|
-
depends: [loadEntitiesTraitKey],
|
|
52
|
-
config: { remote, defaultSort },
|
|
53
|
-
actions: ({ actionsGroupKey, entitiesName }) => createSortTraitActions(actionsGroupKey, entitiesName),
|
|
54
|
-
selectors: () => createSortTraitSelectors(),
|
|
55
|
-
mutators: ({ allSelectors, allConfigs }) => createSortTraitMutators(allSelectors, allConfigs),
|
|
56
|
-
initialState: ({ previousInitialState, allConfigs, }) => createSortInitialState(previousInitialState, allConfigs),
|
|
57
|
-
reducer: ({ initialState, allActions, allMutators, allConfigs }) => createSortTraitReducer(initialState, allActions, allMutators, allConfigs),
|
|
58
|
-
effects: ({ allActions, allConfigs }) => createSortTraitEffect(allActions, allConfigs),
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy50cmFpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc29ydC1lbnRpdGllcy9zb3J0LWVudGl0aWVzLnRyYWl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsc0JBQXNCLEdBQ3ZCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUtMLFlBQVksR0FDYixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFJTCxvQkFBb0IsR0FDckIsTUFBTSxzQ0FBc0MsQ0FBQztBQUs5QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQU92RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQ0c7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQVMsRUFDM0MsTUFBTSxFQUNOLFdBQVcsR0FDZ0I7SUFDM0IsT0FBTyxrQkFBa0IsQ0FBQztRQUN4QixHQUFHLEVBQUUsWUFBWTtRQUNqQixPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztRQUMvQixNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFnQztRQUM3RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQTZCLEVBQUUsRUFBRSxDQUN4RSxzQkFBc0IsQ0FBUyxlQUFlLEVBQUUsWUFBWSxDQUFDO1FBQy9ELFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsRUFBVTtRQUNuRCxRQUFRLEVBQUUsQ0FBQyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQW1DLEVBQUUsRUFBRSxDQUMxRSx1QkFBdUIsQ0FDckIsWUFDK0IsRUFDL0IsVUFBVSxDQUNYO1FBQ0gsWUFBWSxFQUFFLENBQUMsRUFDYixvQkFBb0IsRUFDcEIsVUFBVSxHQUNxQixFQUFFLEVBQUUsQ0FDbkMsc0JBQXNCLENBQVMsb0JBQW9CLEVBQUUsVUFBVSxDQUFDO1FBQ2xFLE9BQU8sRUFBRSxDQUFDLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUNqRSxzQkFBc0IsQ0FDcEIsWUFBWSxFQUNaLFVBQXVFLEVBQ3ZFLFdBQVcsRUFDWCxVQUVpQyxDQUNsQztRQUNILE9BQU8sRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsQ0FDdEMscUJBQXFCLENBQ25CLFVBRTJCLEVBQzNCLFVBQ2lDLENBQ2xDO0tBQ0osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVNvcnRUcmFpdE11dGF0b3JzIH0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLnRyYWl0Lm11dGF0b3JzJztcbmltcG9ydCB7XG4gIGNyZWF0ZVNvcnRJbml0aWFsU3RhdGUsXG4gIGNyZWF0ZVNvcnRUcmFpdFJlZHVjZXIsXG59IGZyb20gJy4vc29ydC1lbnRpdGllcy50cmFpdC5yZWR1Y2VyJztcbmltcG9ydCB7IGNyZWF0ZVNvcnRUcmFpdFNlbGVjdG9ycyB9IGZyb20gJy4vc29ydC1lbnRpdGllcy50cmFpdC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgY3JlYXRlU29ydFRyYWl0RWZmZWN0IH0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLnRyYWl0LmVmZmVjdCc7XG5pbXBvcnQge1xuICBTb3J0RW50aXRpZXNBY3Rpb25zLFxuICBTb3J0RW50aXRpZXNDb25maWcsXG4gIFNvcnRFbnRpdGllc0tleWVkQ29uZmlnLFxuICBTb3J0RW50aXRpZXNTZWxlY3RvcnMsXG4gIHNvcnRUcmFpdEtleSxcbn0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLm1vZGVsJztcbmltcG9ydCB7XG4gIExvYWRFbnRpdGllc0FjdGlvbnMsXG4gIExvYWRFbnRpdGllc0tleWVkQ29uZmlnLFxuICBMb2FkRW50aXRpZXNTZWxlY3RvcnMsXG4gIGxvYWRFbnRpdGllc1RyYWl0S2V5LFxufSBmcm9tICcuLi9sb2FkLWVudGl0aWVzL2xvYWQtZW50aXRpZXMubW9kZWwnO1xuaW1wb3J0IHtcbiAgRW50aXRpZXNQYWdpbmF0aW9uQWN0aW9ucyxcbiAgRW50aXRpZXNQYWdpbmF0aW9uS2V5ZWRDb25maWcsXG59IGZyb20gJy4uL2VudGl0aWVzLXBhZ2luYXRpb24vZW50aXRpZXMtcGFnaW5hdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBjcmVhdGVUcmFpdEZhY3RvcnkgfSBmcm9tICdAbmdyeC10cmFpdHMvY29yZSc7XG5pbXBvcnQgeyBjcmVhdGVTb3J0VHJhaXRBY3Rpb25zIH0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLnRyYWl0LmFjdGlvbnMnO1xuaW1wb3J0IHtcbiAgVHJhaXRBY3Rpb25zRmFjdG9yeUNvbmZpZyxcbiAgVHJhaXRJbml0aWFsU3RhdGVGYWN0b3J5Q29uZmlnLFxuICBUcmFpdFN0YXRlTXV0YXRvcnNGYWN0b3J5Q29uZmlnLFxufSBmcm9tICdAbmdyeC10cmFpdHMvY29yZSc7XG5cbi8qKlxuICogR2VuZXJhdGVzIG5ncnggY29kZSB0byBzb3J0IGxvY2FsbHkgb3IgcmVtb3RlbHkgYSBsaXN0IG9mIGVudGl0aWVzXG4gKiBAcGFyYW0gY29uZmlnXG4gKiBAcGFyYW0gY29uZmlnLmRlZmF1bHRTb3J0IC0gUmVxdWlyZWQgZmllbGQsIERlZmF1bHQgZW50aXR5IHByb3AgZm9yIHRoZSBzb3J0XG4gKiBAcGFyYW0gY29uZmlnLnJlbW90ZSAtIFJlcXVpcmVkIGZpZWxkLCBkZWZhdWx0IHRvIGZhbHNlLCB3aGVuIHRydWUgZGlzYWJsZXMgbG9jYWxcbiAqIHNvcnRpbmcgYW5kIGV2ZXJ5IHNvcnQgYWN0aW9uIGNhbGwgd2lsbCBub3cgdHJpZ2dlciBhIGxvYWRFbnRpdGllcyBhY3Rpb24gYW5kIHRoZSBiYWNrZW5kXG4gKiBzaG91bGQgc29ydCB0aGUgZGF0YSwgdXNlIHNlbGVjdFNvcnQgaW4gdGhlIGVmZmVjdCB0aGF0IGNhbGwgYmFja2VuZCB0byBnZXQgdGhlIHJlcXVlc3RlZCBzb3J0LFxuICogd2hlbiBmYWxzZSBhbGwgc29ydGluZyBpcyBkb25lIGluIG1lbW9yeSB3aGVuIHRoZSBzb3J0IGFjdGlvbiBpcyBmaXJlZFxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBUaGUgZm9sbG93aW5nIHRyYWl0IGNvbmZpZ1xuICogZXhwb3J0IGludGVyZmFjZSBUZXN0U3RhdGVcbiAqIGV4dGVuZHMgRW50aXR5QW5kU3RhdHVzU3RhdGU8VG9kbz4sIFNvcnRTdGF0ZTxUb2RvPnt9XG4gKlxuICogICAgY29uc3QgdHJhaXRzID0gY3JlYXRlRW50aXR5RmVhdHVyZUZhY3RvcnkoXG4gKiAgICAgIHtlbnRpdHlOYW1lOiAnVG9kbyd9LFxuICogICAgICBhZGRMb2FkRW50aXRpZXNUcmFpdDxUb2RvPigpLFxuICogICAgICBhZGRTb3J0RW50aXRpZXNUcmFpdDxUb2RvPih7XG4gKiAgICAgICAgcmVtb3RlOiB0cnVlLFxuICogICAgICAgIGRlZmF1bHRTb3J0OiB7YWN0aXZlOidpZCcsIGRpcmVjdGlvbjonYXNjJ31cbiAqICAgICAgfSlcbiAqICAgICkoe1xuICogICAgICBhY3Rpb25zR3JvdXBLZXk6ICdbVG9kb3NdJyxcbiAqICAgICAgZmVhdHVyZVNlbGVjdG9yOiBjcmVhdGVGZWF0dXJlU2VsZWN0b3I8VGVzdFN0YXRlPj4oXG4gKiAgICAgICAgJ3RvZG9zJyxcbiAqICAgICAgKSxcbiAqICAgIH0pO1xuICogLy8gICBhZGRzIGZvbGxvd2luZyBwcm9wcyB0byB0aGUgc3RhdGU6XG4gKiAvLyAgICAgIHNvcnQ6IHtcbiAqIC8vICAgICAgICBjdXJyZW50OiBTb3J0PFRvZG8+O1xuICogLy8gICAgICAgIGRlZmF1bHQ6IFNvcnQ8VG9kbz47XG4gKiAvLyAgICAgIH1cbiAqXG4gKiAvLyBnZW5lcmF0ZWQgYWN0aW9uc1xuICogdHJhaXRzLmFjdGlvbnMuc29ydFRvZG9zKHthY3RpdmU6J2lkJywgZGlyZWN0aW9uOidkZXNjJ30pXG4gKiB0cmFpdHMuYWN0aW9ucy5yZXNldFRvZG9zU29ydCgpXG4gKiAvL2dlbmVyYXRlZCBzZWxlY3RvcnNcbiAqIHRyYWl0cy5zZWxlY3RvcnMuc2VsZWN0VG9kb3NTb3J0KClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFkZFNvcnRFbnRpdGllc1RyYWl0PEVudGl0eT4oe1xuICByZW1vdGUsXG4gIGRlZmF1bHRTb3J0LFxufTogU29ydEVudGl0aWVzQ29uZmlnPEVudGl0eT4pIHtcbiAgcmV0dXJuIGNyZWF0ZVRyYWl0RmFjdG9yeSh7XG4gICAga2V5OiBzb3J0VHJhaXRLZXksXG4gICAgZGVwZW5kczogW2xvYWRFbnRpdGllc1RyYWl0S2V5XSxcbiAgICBjb25maWc6IHsgcmVtb3RlLCBkZWZhdWx0U29ydCB9IGFzIFNvcnRFbnRpdGllc0NvbmZpZzxFbnRpdHk+LFxuICAgIGFjdGlvbnM6ICh7IGFjdGlvbnNHcm91cEtleSwgZW50aXRpZXNOYW1lIH06IFRyYWl0QWN0aW9uc0ZhY3RvcnlDb25maWcpID0+XG4gICAgICBjcmVhdGVTb3J0VHJhaXRBY3Rpb25zPEVudGl0eT4oYWN0aW9uc0dyb3VwS2V5LCBlbnRpdGllc05hbWUpLFxuICAgIHNlbGVjdG9yczogKCkgPT4gY3JlYXRlU29ydFRyYWl0U2VsZWN0b3JzPEVudGl0eT4oKSxcbiAgICBtdXRhdG9yczogKHsgYWxsU2VsZWN0b3JzLCBhbGxDb25maWdzIH06IFRyYWl0U3RhdGVNdXRhdG9yc0ZhY3RvcnlDb25maWcpID0+XG4gICAgICBjcmVhdGVTb3J0VHJhaXRNdXRhdG9yczxFbnRpdHk+KFxuICAgICAgICBhbGxTZWxlY3RvcnMgYXMgU29ydEVudGl0aWVzU2VsZWN0b3JzPEVudGl0eT4gJlxuICAgICAgICAgIExvYWRFbnRpdGllc1NlbGVjdG9yczxFbnRpdHk+LFxuICAgICAgICBhbGxDb25maWdzXG4gICAgICApLFxuICAgIGluaXRpYWxTdGF0ZTogKHtcbiAgICAgIHByZXZpb3VzSW5pdGlhbFN0YXRlLFxuICAgICAgYWxsQ29uZmlncyxcbiAgICB9OiBUcmFpdEluaXRpYWxTdGF0ZUZhY3RvcnlDb25maWcpID0+XG4gICAgICBjcmVhdGVTb3J0SW5pdGlhbFN0YXRlPEVudGl0eT4ocHJldmlvdXNJbml0aWFsU3RhdGUsIGFsbENvbmZpZ3MpLFxuICAgIHJlZHVjZXI6ICh7IGluaXRpYWxTdGF0ZSwgYWxsQWN0aW9ucywgYWxsTXV0YXRvcnMsIGFsbENvbmZpZ3MgfSkgPT5cbiAgICAgIGNyZWF0ZVNvcnRUcmFpdFJlZHVjZXI8RW50aXR5PihcbiAgICAgICAgaW5pdGlhbFN0YXRlLFxuICAgICAgICBhbGxBY3Rpb25zIGFzIFNvcnRFbnRpdGllc0FjdGlvbnM8RW50aXR5PiAmIExvYWRFbnRpdGllc0FjdGlvbnM8RW50aXR5PixcbiAgICAgICAgYWxsTXV0YXRvcnMsXG4gICAgICAgIGFsbENvbmZpZ3MgYXMgTG9hZEVudGl0aWVzS2V5ZWRDb25maWc8RW50aXR5PiAmXG4gICAgICAgICAgRW50aXRpZXNQYWdpbmF0aW9uS2V5ZWRDb25maWcgJlxuICAgICAgICAgIFNvcnRFbnRpdGllc0tleWVkQ29uZmlnPEVudGl0eT5cbiAgICAgICksXG4gICAgZWZmZWN0czogKHsgYWxsQWN0aW9ucywgYWxsQ29uZmlncyB9KSA9PlxuICAgICAgY3JlYXRlU29ydFRyYWl0RWZmZWN0KFxuICAgICAgICBhbGxBY3Rpb25zIGFzIExvYWRFbnRpdGllc0FjdGlvbnM8RW50aXR5PiAmXG4gICAgICAgICAgU29ydEVudGl0aWVzQWN0aW9uczxFbnRpdHk+ICZcbiAgICAgICAgICBFbnRpdGllc1BhZ2luYXRpb25BY3Rpb25zLFxuICAgICAgICBhbGxDb25maWdzIGFzIExvYWRFbnRpdGllc0tleWVkQ29uZmlnPEVudGl0eT4gJlxuICAgICAgICAgIFNvcnRFbnRpdGllc0tleWVkQ29uZmlnPEVudGl0eT5cbiAgICAgICksXG4gIH0pO1xufVxuIl19
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { sortData } from './sort-entities.utils';
|
|
2
|
-
export function createSortTraitMutators({ selectEntitiesList }, allConfigs) {
|
|
3
|
-
const { remote } = allConfigs.sort;
|
|
4
|
-
function sortEntities({ active, direction }, state) {
|
|
5
|
-
if (remote) {
|
|
6
|
-
return {
|
|
7
|
-
...state,
|
|
8
|
-
sort: { ...state.sort, current: { active, direction } },
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
const { adapter } = allConfigs.loadEntities;
|
|
12
|
-
const entities = selectEntitiesList(state);
|
|
13
|
-
const sortedIds = sortData(entities, { active, direction }).map((v) => adapter.selectId(v));
|
|
14
|
-
return {
|
|
15
|
-
...state,
|
|
16
|
-
ids: sortedIds,
|
|
17
|
-
sort: { ...state.sort, current: { active, direction } },
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
return {
|
|
21
|
-
sortEntities,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy50cmFpdC5tdXRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc29ydC1lbnRpdGllcy9zb3J0LWVudGl0aWVzLnRyYWl0Lm11dGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRCxNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLEVBQUUsa0JBQWtCLEVBQWlDLEVBQ3JELFVBQTJDO0lBRTNDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsSUFBSyxDQUFDO0lBRXBDLFNBQVMsWUFBWSxDQUVuQixFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQWdCLEVBQUUsS0FBUTtRQUM3QyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsT0FBTztnQkFDTCxHQUFHLEtBQUs7Z0JBQ1IsSUFBSSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsRUFBRTthQUN4RCxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxVQUFVLENBQUMsWUFBYSxDQUFDO1FBQzdDLE1BQU0sUUFBUSxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNwRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUNwQixDQUFDO1FBQ0YsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLEdBQUcsRUFBRSxTQUFTO1lBQ2QsSUFBSSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsRUFBRTtTQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU87UUFDTCxZQUFZO0tBQ2IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBMb2FkRW50aXRpZXNLZXllZENvbmZpZyxcbiAgTG9hZEVudGl0aWVzU2VsZWN0b3JzLFxuICBMb2FkRW50aXRpZXNTdGF0ZSxcbn0gZnJvbSAnLi4vbG9hZC1lbnRpdGllcy9sb2FkLWVudGl0aWVzLm1vZGVsJztcbmltcG9ydCB7XG4gIFNvcnQsXG4gIFNvcnRFbnRpdGllc011dGF0b3JzLFxuICBTb3J0RW50aXRpZXNTdGF0ZSxcbn0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLm1vZGVsJztcbmltcG9ydCB7IHNvcnREYXRhIH0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLnV0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNvcnRUcmFpdE11dGF0b3JzPEVudGl0eT4oXG4gIHsgc2VsZWN0RW50aXRpZXNMaXN0IH06IExvYWRFbnRpdGllc1NlbGVjdG9yczxFbnRpdHk+LFxuICBhbGxDb25maWdzOiBMb2FkRW50aXRpZXNLZXllZENvbmZpZzxFbnRpdHk+XG4pOiBTb3J0RW50aXRpZXNNdXRhdG9yczxFbnRpdHk+IHtcbiAgY29uc3QgeyByZW1vdGUgfSA9IGFsbENvbmZpZ3Muc29ydCE7XG5cbiAgZnVuY3Rpb24gc29ydEVudGl0aWVzPFxuICAgIFMgZXh0ZW5kcyBMb2FkRW50aXRpZXNTdGF0ZTxFbnRpdHk+ICYgU29ydEVudGl0aWVzU3RhdGU8RW50aXR5PlxuICA+KHsgYWN0aXZlLCBkaXJlY3Rpb24gfTogU29ydDxFbnRpdHk+LCBzdGF0ZTogUykge1xuICAgIGlmIChyZW1vdGUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBzb3J0OiB7IC4uLnN0YXRlLnNvcnQsIGN1cnJlbnQ6IHsgYWN0aXZlLCBkaXJlY3Rpb24gfSB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCB7IGFkYXB0ZXIgfSA9IGFsbENvbmZpZ3MubG9hZEVudGl0aWVzITtcbiAgICBjb25zdCBlbnRpdGllcyA9IHNlbGVjdEVudGl0aWVzTGlzdChzdGF0ZSk7XG4gICAgY29uc3Qgc29ydGVkSWRzID0gc29ydERhdGEoZW50aXRpZXMsIHsgYWN0aXZlLCBkaXJlY3Rpb24gfSkubWFwKCh2KSA9PlxuICAgICAgYWRhcHRlci5zZWxlY3RJZCh2KVxuICAgICk7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgaWRzOiBzb3J0ZWRJZHMsXG4gICAgICBzb3J0OiB7IC4uLnN0YXRlLnNvcnQsIGN1cnJlbnQ6IHsgYWN0aXZlLCBkaXJlY3Rpb24gfSB9LFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBzb3J0RW50aXRpZXMsXG4gIH07XG59XG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { createReducer, on } from '@ngrx/store';
|
|
2
|
-
export function createSortInitialState(previousInitialState, allConfigs) {
|
|
3
|
-
const { defaultSort } = allConfigs.sort;
|
|
4
|
-
return {
|
|
5
|
-
...previousInitialState,
|
|
6
|
-
sort: {
|
|
7
|
-
current: defaultSort,
|
|
8
|
-
default: defaultSort,
|
|
9
|
-
},
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
export function createSortTraitReducer(initialState, allActions, allMutators, allConfigs) {
|
|
13
|
-
return createReducer(initialState, on(allActions.sortEntities, (state, { active, direction }) => allMutators.sortEntities({ active, direction }, state)), on(allActions.resetEntitiesSort, (state) => allMutators.sortEntities(state.sort?.default, state)));
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy50cmFpdC5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ3J4LXRyYWl0cy9jb21tb24vc3JjL2xpYi9zb3J0LWVudGl0aWVzL3NvcnQtZW50aXRpZXMudHJhaXQucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQWFoRCxNQUFNLFVBQVUsc0JBQXNCLENBQ3BDLG9CQUF5QixFQUN6QixVQUEyQztJQUUzQyxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsVUFBVSxDQUFDLElBQUssQ0FBQztJQUV6QyxPQUFPO1FBQ0wsR0FBRyxvQkFBb0I7UUFDdkIsSUFBSSxFQUFFO1lBQ0osT0FBTyxFQUFFLFdBQVc7WUFDcEIsT0FBTyxFQUFFLFdBQVc7U0FDckI7S0FDRixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FNcEMsWUFBZSxFQUNmLFVBQXFFLEVBQ3JFLFdBQXlDLEVBQ3pDLFVBQTZFO0lBRTdFLE9BQU8sYUFBYSxDQUNsQixZQUFZLEVBQ1osRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUMzRCxXQUFXLENBQUMsWUFBWSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUN2RCxFQUNELEVBQUUsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUN6QyxXQUFXLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUNyRCxDQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUmVkdWNlciwgb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBMb2FkRW50aXRpZXNBY3Rpb25zLFxuICBMb2FkRW50aXRpZXNLZXllZENvbmZpZyxcbiAgTG9hZEVudGl0aWVzU3RhdGUsXG59IGZyb20gJy4uL2xvYWQtZW50aXRpZXMnO1xuaW1wb3J0IHtcbiAgU29ydEVudGl0aWVzQWN0aW9ucyxcbiAgU29ydEVudGl0aWVzS2V5ZWRDb25maWcsXG4gIFNvcnRFbnRpdGllc011dGF0b3JzLFxuICBTb3J0RW50aXRpZXNTdGF0ZSxcbn0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLm1vZGVsJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNvcnRJbml0aWFsU3RhdGU8RW50aXR5PihcbiAgcHJldmlvdXNJbml0aWFsU3RhdGU6IGFueSxcbiAgYWxsQ29uZmlnczogU29ydEVudGl0aWVzS2V5ZWRDb25maWc8RW50aXR5PlxuKTogTG9hZEVudGl0aWVzU3RhdGU8RW50aXR5PiAmIFNvcnRFbnRpdGllc1N0YXRlPEVudGl0eT4ge1xuICBjb25zdCB7IGRlZmF1bHRTb3J0IH0gPSBhbGxDb25maWdzLnNvcnQhO1xuXG4gIHJldHVybiB7XG4gICAgLi4ucHJldmlvdXNJbml0aWFsU3RhdGUsXG4gICAgc29ydDoge1xuICAgICAgY3VycmVudDogZGVmYXVsdFNvcnQsXG4gICAgICBkZWZhdWx0OiBkZWZhdWx0U29ydCxcbiAgICB9LFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU29ydFRyYWl0UmVkdWNlcjxcbiAgRW50aXR5LFxuICBTIGV4dGVuZHMgTG9hZEVudGl0aWVzU3RhdGU8RW50aXR5PiAmXG4gICAgU29ydEVudGl0aWVzU3RhdGU8RW50aXR5PiA9IExvYWRFbnRpdGllc1N0YXRlPEVudGl0eT4gJlxuICAgIFNvcnRFbnRpdGllc1N0YXRlPEVudGl0eT5cbj4oXG4gIGluaXRpYWxTdGF0ZTogUyxcbiAgYWxsQWN0aW9uczogU29ydEVudGl0aWVzQWN0aW9uczxFbnRpdHk+ICYgTG9hZEVudGl0aWVzQWN0aW9uczxFbnRpdHk+LFxuICBhbGxNdXRhdG9yczogU29ydEVudGl0aWVzTXV0YXRvcnM8RW50aXR5PixcbiAgYWxsQ29uZmlnczogTG9hZEVudGl0aWVzS2V5ZWRDb25maWc8RW50aXR5PiAmIFNvcnRFbnRpdGllc0tleWVkQ29uZmlnPEVudGl0eT5cbikge1xuICByZXR1cm4gY3JlYXRlUmVkdWNlcihcbiAgICBpbml0aWFsU3RhdGUsXG4gICAgb24oYWxsQWN0aW9ucy5zb3J0RW50aXRpZXMsIChzdGF0ZSwgeyBhY3RpdmUsIGRpcmVjdGlvbiB9KSA9PlxuICAgICAgYWxsTXV0YXRvcnMuc29ydEVudGl0aWVzKHsgYWN0aXZlLCBkaXJlY3Rpb24gfSwgc3RhdGUpXG4gICAgKSxcbiAgICBvbihhbGxBY3Rpb25zLnJlc2V0RW50aXRpZXNTb3J0LCAoc3RhdGUpID0+XG4gICAgICBhbGxNdXRhdG9ycy5zb3J0RW50aXRpZXMoc3RhdGUuc29ydD8uZGVmYXVsdCwgc3RhdGUpXG4gICAgKVxuICApO1xufVxuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export function createSortTraitSelectors() {
|
|
2
|
-
function selectEntitiesSort(state) {
|
|
3
|
-
return state.sort?.current;
|
|
4
|
-
}
|
|
5
|
-
return {
|
|
6
|
-
selectEntitiesSort,
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy50cmFpdC5zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25ncngtdHJhaXRzL2NvbW1vbi9zcmMvbGliL3NvcnQtZW50aXRpZXMvc29ydC1lbnRpdGllcy50cmFpdC5zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxVQUFVLHdCQUF3QjtJQUd0QyxTQUFTLGtCQUFrQixDQUFDLEtBQWdDO1FBQzFELE9BQU8sS0FBSyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7SUFDN0IsQ0FBQztJQUNELE9BQU87UUFDTCxrQkFBa0I7S0FDbkIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTb3J0RW50aXRpZXNTZWxlY3RvcnMsXG4gIFNvcnRFbnRpdGllc1N0YXRlLFxufSBmcm9tICcuL3NvcnQtZW50aXRpZXMubW9kZWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU29ydFRyYWl0U2VsZWN0b3JzPFxuICBFbnRpdHlcbj4oKTogU29ydEVudGl0aWVzU2VsZWN0b3JzPEVudGl0eT4ge1xuICBmdW5jdGlvbiBzZWxlY3RFbnRpdGllc1NvcnQoc3RhdGU6IFNvcnRFbnRpdGllc1N0YXRlPEVudGl0eT4pIHtcbiAgICByZXR1cm4gc3RhdGUuc29ydD8uY3VycmVudDtcbiAgfVxuICByZXR1cm4ge1xuICAgIHNlbGVjdEVudGl0aWVzU29ydCxcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
const MAX_SAFE_INTEGER = 9007199254740991;
|
|
2
|
-
export function _isNumberValue(value) {
|
|
3
|
-
// parseFloat(value) handles most of the cases we're interested in (it treats null, empty string,
|
|
4
|
-
// and other non-number values as NaN, where Number just uses 0) but it considers the string
|
|
5
|
-
// '123hello' to be a valid number. Therefore we also check if Number(value) is NaN.
|
|
6
|
-
return !isNaN(parseFloat(value)) && !isNaN(Number(value));
|
|
7
|
-
}
|
|
8
|
-
function sortingDataAccessor(data, sortHeaderId) {
|
|
9
|
-
const value = data[sortHeaderId];
|
|
10
|
-
if (_isNumberValue(value)) {
|
|
11
|
-
const numberValue = Number(value);
|
|
12
|
-
// Numbers beyond `MAX_SAFE_INTEGER` can't be compared reliably so we
|
|
13
|
-
// leave them as strings. For more info: https://goo.gl/y5vbSg
|
|
14
|
-
return numberValue < MAX_SAFE_INTEGER ? numberValue : value;
|
|
15
|
-
}
|
|
16
|
-
return value;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* @internal
|
|
20
|
-
* @ignore
|
|
21
|
-
* Gets a sorted copy of the data array based on the state of the Sort.
|
|
22
|
-
* @param data The array of data that should be sorted.
|
|
23
|
-
* @param sort The connected MatSort that holds the current sort state.
|
|
24
|
-
*/
|
|
25
|
-
export function sortData(data, sort) {
|
|
26
|
-
const active = sort.active;
|
|
27
|
-
const direction = sort.direction;
|
|
28
|
-
if (!active || direction === '') {
|
|
29
|
-
return data;
|
|
30
|
-
}
|
|
31
|
-
return data.sort((a, b) => {
|
|
32
|
-
const valueA = sortingDataAccessor(a, active);
|
|
33
|
-
const valueB = sortingDataAccessor(b, active);
|
|
34
|
-
// If both valueA and valueB exist (truthy), then compare the two. Otherwise, check if
|
|
35
|
-
// one value exists while the other doesn't. In this case, existing value should come last.
|
|
36
|
-
// This avoids inconsistent results when comparing values to undefined/null.
|
|
37
|
-
// If neither value exists, return 0 (equal).
|
|
38
|
-
let comparatorResult = 0;
|
|
39
|
-
if (valueA != null && valueB != null) {
|
|
40
|
-
// Check if one value is greater than the other; if equal, comparatorResult should remain 0.
|
|
41
|
-
if (typeof valueA === 'string' || typeof valueB === 'string') {
|
|
42
|
-
// if either values are a string, then force both to be strings before localCompare
|
|
43
|
-
comparatorResult = valueA.toString().localeCompare(valueB.toString());
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
if (valueA > valueB) {
|
|
47
|
-
comparatorResult = 1;
|
|
48
|
-
}
|
|
49
|
-
else if (valueA < valueB) {
|
|
50
|
-
comparatorResult = -1;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
else if (valueA != null) {
|
|
55
|
-
comparatorResult = 1;
|
|
56
|
-
}
|
|
57
|
-
else if (valueB != null) {
|
|
58
|
-
comparatorResult = -1;
|
|
59
|
-
}
|
|
60
|
-
return comparatorResult * (direction === 'asc' ? 1 : -1);
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1lbnRpdGllcy51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdyeC10cmFpdHMvY29tbW9uL3NyYy9saWIvc29ydC1lbnRpdGllcy9zb3J0LWVudGl0aWVzLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7QUFFMUMsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUFVO0lBQ3ZDLGlHQUFpRztJQUNqRyw0RkFBNEY7SUFDNUYsb0ZBQW9GO0lBQ3BGLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDbkUsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQzFCLElBQU8sRUFDUCxZQUFvQjtJQUVwQixNQUFNLEtBQUssR0FBSSxJQUErQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRTdELElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDMUIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWxDLHFFQUFxRTtRQUNyRSw4REFBOEQ7UUFDOUQsT0FBTyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzlELENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsUUFBUSxDQUFJLElBQVMsRUFBRSxJQUFhO0lBQ2xELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNqQyxJQUFJLENBQUMsTUFBTSxJQUFJLFNBQVMsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDeEIsTUFBTSxNQUFNLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxFQUFFLE1BQWdCLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sR0FBRyxtQkFBbUIsQ0FBQyxDQUFDLEVBQUUsTUFBZ0IsQ0FBQyxDQUFDO1FBRXhELHNGQUFzRjtRQUN0RiwyRkFBMkY7UUFDM0YsNEVBQTRFO1FBQzVFLDZDQUE2QztRQUM3QyxJQUFJLGdCQUFnQixHQUFHLENBQUMsQ0FBQztRQUN6QixJQUFJLE1BQU0sSUFBSSxJQUFJLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3JDLDRGQUE0RjtZQUU1RixJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDN0QsbUZBQW1GO2dCQUNuRixnQkFBZ0IsR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3hFLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQztvQkFDcEIsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QixDQUFDO3FCQUFNLElBQUksTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO29CQUMzQixnQkFBZ0IsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDeEIsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO2FBQU0sSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFDMUIsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7YUFBTSxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMxQixnQkFBZ0IsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN4QixDQUFDO1FBRUQsT0FBTyxnQkFBZ0IsR0FBRyxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTb3J0IH0gZnJvbSAnLi9zb3J0LWVudGl0aWVzLm1vZGVsJztcblxuY29uc3QgTUFYX1NBRkVfSU5URUdFUiA9IDkwMDcxOTkyNTQ3NDA5OTE7XG5cbmV4cG9ydCBmdW5jdGlvbiBfaXNOdW1iZXJWYWx1ZSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gIC8vIHBhcnNlRmxvYXQodmFsdWUpIGhhbmRsZXMgbW9zdCBvZiB0aGUgY2FzZXMgd2UncmUgaW50ZXJlc3RlZCBpbiAoaXQgdHJlYXRzIG51bGwsIGVtcHR5IHN0cmluZyxcbiAgLy8gYW5kIG90aGVyIG5vbi1udW1iZXIgdmFsdWVzIGFzIE5hTiwgd2hlcmUgTnVtYmVyIGp1c3QgdXNlcyAwKSBidXQgaXQgY29uc2lkZXJzIHRoZSBzdHJpbmdcbiAgLy8gJzEyM2hlbGxvJyB0byBiZSBhIHZhbGlkIG51bWJlci4gVGhlcmVmb3JlIHdlIGFsc28gY2hlY2sgaWYgTnVtYmVyKHZhbHVlKSBpcyBOYU4uXG4gIHJldHVybiAhaXNOYU4ocGFyc2VGbG9hdCh2YWx1ZSBhcyBhbnkpKSAmJiAhaXNOYU4oTnVtYmVyKHZhbHVlKSk7XG59XG5cbmZ1bmN0aW9uIHNvcnRpbmdEYXRhQWNjZXNzb3I8VD4oXG4gIGRhdGE6IFQsXG4gIHNvcnRIZWFkZXJJZDogc3RyaW5nXG4pOiBzdHJpbmcgfCBudW1iZXIge1xuICBjb25zdCB2YWx1ZSA9IChkYXRhIGFzIHsgW2tleTogc3RyaW5nXTogYW55IH0pW3NvcnRIZWFkZXJJZF07XG5cbiAgaWYgKF9pc051bWJlclZhbHVlKHZhbHVlKSkge1xuICAgIGNvbnN0IG51bWJlclZhbHVlID0gTnVtYmVyKHZhbHVlKTtcblxuICAgIC8vIE51bWJlcnMgYmV5b25kIGBNQVhfU0FGRV9JTlRFR0VSYCBjYW4ndCBiZSBjb21wYXJlZCByZWxpYWJseSBzbyB3ZVxuICAgIC8vIGxlYXZlIHRoZW0gYXMgc3RyaW5ncy4gRm9yIG1vcmUgaW5mbzogaHR0cHM6Ly9nb28uZ2wveTV2YlNnXG4gICAgcmV0dXJuIG51bWJlclZhbHVlIDwgTUFYX1NBRkVfSU5URUdFUiA/IG51bWJlclZhbHVlIDogdmFsdWU7XG4gIH1cblxuICByZXR1cm4gdmFsdWU7XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAaWdub3JlXG4gKiBHZXRzIGEgc29ydGVkIGNvcHkgb2YgdGhlIGRhdGEgYXJyYXkgYmFzZWQgb24gdGhlIHN0YXRlIG9mIHRoZSBTb3J0LlxuICogQHBhcmFtIGRhdGEgVGhlIGFycmF5IG9mIGRhdGEgdGhhdCBzaG91bGQgYmUgc29ydGVkLlxuICogQHBhcmFtIHNvcnQgVGhlIGNvbm5lY3RlZCBNYXRTb3J0IHRoYXQgaG9sZHMgdGhlIGN1cnJlbnQgc29ydCBzdGF0ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNvcnREYXRhPFQ+KGRhdGE6IFRbXSwgc29ydDogU29ydDxUPik6IFRbXSB7XG4gIGNvbnN0IGFjdGl2ZSA9IHNvcnQuYWN0aXZlO1xuICBjb25zdCBkaXJlY3Rpb24gPSBzb3J0LmRpcmVjdGlvbjtcbiAgaWYgKCFhY3RpdmUgfHwgZGlyZWN0aW9uID09PSAnJykge1xuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcmV0dXJuIGRhdGEuc29ydCgoYSwgYikgPT4ge1xuICAgIGNvbnN0IHZhbHVlQSA9IHNvcnRpbmdEYXRhQWNjZXNzb3IoYSwgYWN0aXZlIGFzIHN0cmluZyk7XG4gICAgY29uc3QgdmFsdWVCID0gc29ydGluZ0RhdGFBY2Nlc3NvcihiLCBhY3RpdmUgYXMgc3RyaW5nKTtcblxuICAgIC8vIElmIGJvdGggdmFsdWVBIGFuZCB2YWx1ZUIgZXhpc3QgKHRydXRoeSksIHRoZW4gY29tcGFyZSB0aGUgdHdvLiBPdGhlcndpc2UsIGNoZWNrIGlmXG4gICAgLy8gb25lIHZhbHVlIGV4aXN0cyB3aGlsZSB0aGUgb3RoZXIgZG9lc24ndC4gSW4gdGhpcyBjYXNlLCBleGlzdGluZyB2YWx1ZSBzaG91bGQgY29tZSBsYXN0LlxuICAgIC8vIFRoaXMgYXZvaWRzIGluY29uc2lzdGVudCByZXN1bHRzIHdoZW4gY29tcGFyaW5nIHZhbHVlcyB0byB1bmRlZmluZWQvbnVsbC5cbiAgICAvLyBJZiBuZWl0aGVyIHZhbHVlIGV4aXN0cywgcmV0dXJuIDAgKGVxdWFsKS5cbiAgICBsZXQgY29tcGFyYXRvclJlc3VsdCA9IDA7XG4gICAgaWYgKHZhbHVlQSAhPSBudWxsICYmIHZhbHVlQiAhPSBudWxsKSB7XG4gICAgICAvLyBDaGVjayBpZiBvbmUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBvdGhlcjsgaWYgZXF1YWwsIGNvbXBhcmF0b3JSZXN1bHQgc2hvdWxkIHJlbWFpbiAwLlxuXG4gICAgICBpZiAodHlwZW9mIHZhbHVlQSA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIHZhbHVlQiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgLy8gaWYgZWl0aGVyIHZhbHVlcyBhcmUgYSBzdHJpbmcsIHRoZW4gZm9yY2UgYm90aCB0byBiZSBzdHJpbmdzIGJlZm9yZSBsb2NhbENvbXBhcmVcbiAgICAgICAgY29tcGFyYXRvclJlc3VsdCA9IHZhbHVlQS50b1N0cmluZygpLmxvY2FsZUNvbXBhcmUodmFsdWVCLnRvU3RyaW5nKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHZhbHVlQSA+IHZhbHVlQikge1xuICAgICAgICAgIGNvbXBhcmF0b3JSZXN1bHQgPSAxO1xuICAgICAgICB9IGVsc2UgaWYgKHZhbHVlQSA8IHZhbHVlQikge1xuICAgICAgICAgIGNvbXBhcmF0b3JSZXN1bHQgPSAtMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodmFsdWVBICE9IG51bGwpIHtcbiAgICAgIGNvbXBhcmF0b3JSZXN1bHQgPSAxO1xuICAgIH0gZWxzZSBpZiAodmFsdWVCICE9IG51bGwpIHtcbiAgICAgIGNvbXBhcmF0b3JSZXN1bHQgPSAtMTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29tcGFyYXRvclJlc3VsdCAqIChkaXJlY3Rpb24gPT09ICdhc2MnID8gMSA6IC0xKTtcbiAgfSk7XG59XG4iXX0=
|