@ngrx-traits/common 0.0.1
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/README.md +7 -0
- package/async-action/async-action.model.d.ts +19 -0
- package/async-action/async-action.trait.d.ts +59 -0
- package/async-action/index.d.ts +2 -0
- package/bundles/ngrx-traits-common.umd.js +2126 -0
- package/bundles/ngrx-traits-common.umd.js.map +1 -0
- package/crud-entities/crud-entities.model.d.ts +76 -0
- package/crud-entities/crud-entities.trait.actions.d.ts +2 -0
- package/crud-entities/crud-entities.trait.d.ts +35 -0
- package/crud-entities/crud-entities.trait.mutators.d.ts +3 -0
- package/crud-entities/crud-entities.trait.reducer.d.ts +7 -0
- package/crud-entities/crud-entities.trait.selectors.d.ts +3 -0
- package/crud-entities/index.d.ts +2 -0
- package/entities-pagination/entities-pagination.model.d.ts +82 -0
- package/entities-pagination/entities-pagination.model.internal.d.ts +12 -0
- package/entities-pagination/entities-pagination.trait.actions.d.ts +2 -0
- package/entities-pagination/entities-pagination.trait.d.ts +55 -0
- package/entities-pagination/entities-pagination.trait.effects.d.ts +8 -0
- package/entities-pagination/entities-pagination.trait.mutators.d.ts +3 -0
- package/entities-pagination/entities-pagination.trait.reducer.d.ts +7 -0
- package/entities-pagination/entities-pagination.trait.selectors.d.ts +4 -0
- package/entities-pagination/index.d.ts +2 -0
- package/esm2015/async-action/async-action.model.js +2 -0
- package/esm2015/async-action/async-action.model.js.map +1 -0
- package/esm2015/async-action/async-action.trait.js +96 -0
- package/esm2015/async-action/async-action.trait.js.map +1 -0
- package/esm2015/async-action/index.js +3 -0
- package/esm2015/async-action/index.js.map +1 -0
- package/esm2015/crud-entities/crud-entities.model.js +8 -0
- package/esm2015/crud-entities/crud-entities.model.js.map +1 -0
- package/esm2015/crud-entities/crud-entities.trait.actions.js +20 -0
- package/esm2015/crud-entities/crud-entities.trait.actions.js.map +1 -0
- package/esm2015/crud-entities/crud-entities.trait.js +53 -0
- package/esm2015/crud-entities/crud-entities.trait.js.map +1 -0
- package/esm2015/crud-entities/crud-entities.trait.mutators.js +101 -0
- package/esm2015/crud-entities/crud-entities.trait.mutators.js.map +1 -0
- package/esm2015/crud-entities/crud-entities.trait.reducer.js +15 -0
- package/esm2015/crud-entities/crud-entities.trait.reducer.js.map +1 -0
- package/esm2015/crud-entities/crud-entities.trait.selectors.js +70 -0
- package/esm2015/crud-entities/crud-entities.trait.selectors.js.map +1 -0
- package/esm2015/crud-entities/index.js +3 -0
- package/esm2015/crud-entities/index.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.model.internal.js +2 -0
- package/esm2015/entities-pagination/entities-pagination.model.internal.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.model.js +2 -0
- package/esm2015/entities-pagination/entities-pagination.model.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.trait.actions.js +20 -0
- package/esm2015/entities-pagination/entities-pagination.trait.actions.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.trait.effects.js +54 -0
- package/esm2015/entities-pagination/entities-pagination.trait.effects.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.trait.js +80 -0
- package/esm2015/entities-pagination/entities-pagination.trait.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.trait.mutators.js +23 -0
- package/esm2015/entities-pagination/entities-pagination.trait.mutators.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.trait.reducer.js +33 -0
- package/esm2015/entities-pagination/entities-pagination.trait.reducer.js.map +1 -0
- package/esm2015/entities-pagination/entities-pagination.trait.selectors.js +65 -0
- package/esm2015/entities-pagination/entities-pagination.trait.selectors.js.map +1 -0
- package/esm2015/entities-pagination/index.js +3 -0
- package/esm2015/entities-pagination/index.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.model.internal.js +2 -0
- package/esm2015/filter-entities/filter-entities.model.internal.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.model.js +2 -0
- package/esm2015/filter-entities/filter-entities.model.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.trait.actions.js +16 -0
- package/esm2015/filter-entities/filter-entities.trait.actions.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.trait.effect.js +56 -0
- package/esm2015/filter-entities/filter-entities.trait.effect.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.trait.js +68 -0
- package/esm2015/filter-entities/filter-entities.trait.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.trait.mutators.js +7 -0
- package/esm2015/filter-entities/filter-entities.trait.mutators.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.trait.reducer.js +9 -0
- package/esm2015/filter-entities/filter-entities.trait.reducer.js.map +1 -0
- package/esm2015/filter-entities/filter-entities.trait.selectors.js +9 -0
- package/esm2015/filter-entities/filter-entities.trait.selectors.js.map +1 -0
- package/esm2015/filter-entities/index.js +3 -0
- package/esm2015/filter-entities/index.js.map +1 -0
- package/esm2015/index.js +12 -0
- package/esm2015/index.js.map +1 -0
- package/esm2015/load-entities/index.js +3 -0
- package/esm2015/load-entities/index.js.map +1 -0
- package/esm2015/load-entities/load-entities.model.js +2 -0
- package/esm2015/load-entities/load-entities.model.js.map +1 -0
- package/esm2015/load-entities/load-entities.mutators.js +8 -0
- package/esm2015/load-entities/load-entities.mutators.js.map +1 -0
- package/esm2015/load-entities/load-entities.trait.actions.js +10 -0
- package/esm2015/load-entities/load-entities.trait.actions.js.map +1 -0
- package/esm2015/load-entities/load-entities.trait.js +57 -0
- package/esm2015/load-entities/load-entities.trait.js.map +1 -0
- package/esm2015/load-entities/load-entities.trait.reducer.js +12 -0
- package/esm2015/load-entities/load-entities.trait.reducer.js.map +1 -0
- package/esm2015/load-entities/load-entities.trait.selectors.js +33 -0
- package/esm2015/load-entities/load-entities.trait.selectors.js.map +1 -0
- package/esm2015/load-entities/load-entities.utils.js +10 -0
- package/esm2015/load-entities/load-entities.utils.js.map +1 -0
- package/esm2015/load-entity/index.js +3 -0
- package/esm2015/load-entity/index.js.map +1 -0
- package/esm2015/load-entity/load-entity.model.js +2 -0
- package/esm2015/load-entity/load-entity.model.js.map +1 -0
- package/esm2015/load-entity/load-entity.traits.js +65 -0
- package/esm2015/load-entity/load-entity.traits.js.map +1 -0
- package/esm2015/ngrx-traits-common.js +5 -0
- package/esm2015/ngrx-traits-common.js.map +1 -0
- package/esm2015/public_api.js +2 -0
- package/esm2015/public_api.js.map +1 -0
- package/esm2015/reset/index.js +2 -0
- package/esm2015/reset/index.js.map +1 -0
- package/esm2015/reset/reset.trait.js +66 -0
- package/esm2015/reset/reset.trait.js.map +1 -0
- package/esm2015/select-entities/index.js +4 -0
- package/esm2015/select-entities/index.js.map +1 -0
- package/esm2015/select-entities/select-entities.model.js +2 -0
- package/esm2015/select-entities/select-entities.model.js.map +1 -0
- package/esm2015/select-entities/select-entities.trait.actions.js +11 -0
- package/esm2015/select-entities/select-entities.trait.actions.js.map +1 -0
- package/esm2015/select-entities/select-entities.trait.js +50 -0
- package/esm2015/select-entities/select-entities.trait.js.map +1 -0
- package/esm2015/select-entities/select-entities.trait.mutators.js +21 -0
- package/esm2015/select-entities/select-entities.trait.mutators.js.map +1 -0
- package/esm2015/select-entities/select-entities.trait.reducer.js +40 -0
- package/esm2015/select-entities/select-entities.trait.reducer.js.map +1 -0
- package/esm2015/select-entities/select-entities.trait.selectors.js +28 -0
- package/esm2015/select-entities/select-entities.trait.selectors.js.map +1 -0
- package/esm2015/select-entities/select-entities.utils.js +25 -0
- package/esm2015/select-entities/select-entities.utils.js.map +1 -0
- package/esm2015/select-entity/index.js +3 -0
- package/esm2015/select-entity/index.js.map +1 -0
- package/esm2015/select-entity/select-entity.model.js +2 -0
- package/esm2015/select-entity/select-entity.model.js.map +1 -0
- package/esm2015/select-entity/select-entity.trait.actions.js +9 -0
- package/esm2015/select-entity/select-entity.trait.actions.js.map +1 -0
- package/esm2015/select-entity/select-entity.trait.js +47 -0
- package/esm2015/select-entity/select-entity.trait.js.map +1 -0
- package/esm2015/select-entity/select-entity.trait.mutators.js +17 -0
- package/esm2015/select-entity/select-entity.trait.mutators.js.map +1 -0
- package/esm2015/select-entity/select-entity.trait.reducer.js +26 -0
- package/esm2015/select-entity/select-entity.trait.reducer.js.map +1 -0
- package/esm2015/select-entity/select-entity.trait.selectors.js +13 -0
- package/esm2015/select-entity/select-entity.trait.selectors.js.map +1 -0
- package/esm2015/set-entity/index.js +3 -0
- package/esm2015/set-entity/index.js.map +1 -0
- package/esm2015/set-entity/set-entity.model.js +2 -0
- package/esm2015/set-entity/set-entity.model.js.map +1 -0
- package/esm2015/set-entity/set-entity.trait.js +52 -0
- package/esm2015/set-entity/set-entity.trait.js.map +1 -0
- package/esm2015/sort-entities/index.js +4 -0
- package/esm2015/sort-entities/index.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.model.js +2 -0
- package/esm2015/sort-entities/sort-entities.model.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.trait.actions.js +8 -0
- package/esm2015/sort-entities/sort-entities.trait.actions.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.trait.effect.js +28 -0
- package/esm2015/sort-entities/sort-entities.trait.effect.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.trait.js +53 -0
- package/esm2015/sort-entities/sort-entities.trait.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.trait.mutators.js +13 -0
- package/esm2015/sort-entities/sort-entities.trait.mutators.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.trait.reducer.js +22 -0
- package/esm2015/sort-entities/sort-entities.trait.reducer.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.trait.selectors.js +10 -0
- package/esm2015/sort-entities/sort-entities.trait.selectors.js.map +1 -0
- package/esm2015/sort-entities/sort-entities.utils.js +61 -0
- package/esm2015/sort-entities/sort-entities.utils.js.map +1 -0
- package/fesm2015/ngrx-traits-common.js +1511 -0
- package/fesm2015/ngrx-traits-common.js.map +1 -0
- package/filter-entities/filter-entities.model.d.ts +57 -0
- package/filter-entities/filter-entities.model.internal.d.ts +14 -0
- package/filter-entities/filter-entities.trait.actions.d.ts +2 -0
- package/filter-entities/filter-entities.trait.d.ts +42 -0
- package/filter-entities/filter-entities.trait.effect.d.ts +6 -0
- package/filter-entities/filter-entities.trait.mutators.d.ts +2 -0
- package/filter-entities/filter-entities.trait.reducer.d.ts +5 -0
- package/filter-entities/filter-entities.trait.selectors.d.ts +4 -0
- package/filter-entities/index.d.ts +2 -0
- package/index.d.ts +11 -0
- package/load-entities/index.d.ts +2 -0
- package/load-entities/load-entities.model.d.ts +97 -0
- package/load-entities/load-entities.mutators.d.ts +3 -0
- package/load-entities/load-entities.trait.actions.d.ts +2 -0
- package/load-entities/load-entities.trait.d.ts +39 -0
- package/load-entities/load-entities.trait.reducer.d.ts +4 -0
- package/load-entities/load-entities.trait.selectors.d.ts +3 -0
- package/load-entities/load-entities.utils.d.ts +4 -0
- package/load-entity/index.d.ts +2 -0
- package/load-entity/load-entity.model.d.ts +9 -0
- package/load-entity/load-entity.traits.d.ts +64 -0
- package/ngrx-traits-common.d.ts +5 -0
- package/package.json +28 -0
- package/public_api.d.ts +1 -0
- package/reset/index.d.ts +1 -0
- package/reset/reset.trait.d.ts +32 -0
- package/select-entities/index.d.ts +3 -0
- package/select-entities/select-entities.model.d.ts +41 -0
- package/select-entities/select-entities.trait.actions.d.ts +2 -0
- package/select-entities/select-entities.trait.d.ts +34 -0
- package/select-entities/select-entities.trait.mutators.d.ts +2 -0
- package/select-entities/select-entities.trait.reducer.d.ts +8 -0
- package/select-entities/select-entities.trait.selectors.d.ts +3 -0
- package/select-entities/select-entities.utils.d.ts +7 -0
- package/select-entity/index.d.ts +2 -0
- package/select-entity/select-entity.model.d.ts +33 -0
- package/select-entity/select-entity.trait.actions.d.ts +2 -0
- package/select-entity/select-entity.trait.d.ts +30 -0
- package/select-entity/select-entity.trait.mutators.d.ts +2 -0
- package/select-entity/select-entity.trait.reducer.d.ts +8 -0
- package/select-entity/select-entity.trait.selectors.d.ts +2 -0
- package/set-entity/index.d.ts +2 -0
- package/set-entity/set-entity.model.d.ts +16 -0
- package/set-entity/set-entity.trait.d.ts +39 -0
- package/sort-entities/index.d.ts +3 -0
- package/sort-entities/sort-entities.model.d.ts +35 -0
- package/sort-entities/sort-entities.trait.actions.d.ts +2 -0
- package/sort-entities/sort-entities.trait.d.ts +33 -0
- package/sort-entities/sort-entities.trait.effect.d.ts +6 -0
- package/sort-entities/sort-entities.trait.mutators.d.ts +3 -0
- package/sort-entities/sort-entities.trait.reducer.d.ts +4 -0
- package/sort-entities/sort-entities.trait.selectors.d.ts +2 -0
- package/sort-entities/sort-entities.utils.d.ts +8 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { LoadEntitiesState } from '../load-entities/load-entities.model';
|
|
2
|
+
import { ActionCreator, TypedAction } from '@ngrx/store/src/models';
|
|
3
|
+
import { KeyedConfig } from '@ngrx-traits/core';
|
|
4
|
+
export declare type SortDirection = 'asc' | 'desc' | '';
|
|
5
|
+
export interface Sort<T> {
|
|
6
|
+
/** The id of the column being sorted. */
|
|
7
|
+
active: keyof T;
|
|
8
|
+
/** The sort direction. */
|
|
9
|
+
direction: SortDirection;
|
|
10
|
+
}
|
|
11
|
+
export interface SortEntitiesState<T> {
|
|
12
|
+
sort: {
|
|
13
|
+
current: Sort<T>;
|
|
14
|
+
default: Sort<T>;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export declare type SortEntitiesActions<T> = {
|
|
18
|
+
sortEntities: ActionCreator<string, (props: Sort<T>) => Sort<T> & TypedAction<string>>;
|
|
19
|
+
/**
|
|
20
|
+
* Sets the default sort back
|
|
21
|
+
*/
|
|
22
|
+
resetEntitiesSort: ActionCreator<string, () => TypedAction<string>>;
|
|
23
|
+
};
|
|
24
|
+
export declare type SortEntitiesSelectors<T> = {
|
|
25
|
+
selectEntitiesSort: (state: LoadEntitiesState<T> & SortEntitiesState<T>) => Sort<T>;
|
|
26
|
+
};
|
|
27
|
+
export declare type SortEntitiesMutators<T> = {
|
|
28
|
+
sortEntities<S extends LoadEntitiesState<T> & SortEntitiesState<T>>({ active, direction }: Sort<T>, state: S): S;
|
|
29
|
+
};
|
|
30
|
+
export declare const sortTraitKey = "sort";
|
|
31
|
+
export interface SortEntitiesConfig<T> {
|
|
32
|
+
defaultSort: Sort<T>;
|
|
33
|
+
remote?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export declare type SortEntitiesKeyedConfig<T> = KeyedConfig<typeof sortTraitKey, SortEntitiesConfig<T>>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { SortEntitiesActions, SortEntitiesConfig, SortEntitiesSelectors } from './sort-entities.model';
|
|
2
|
+
/**
|
|
3
|
+
* Generates ngrx code to sort locally or remotely a list of entities
|
|
4
|
+
* @param config
|
|
5
|
+
* @param config.defaultSort - Required, Default entity prop for the sort
|
|
6
|
+
* @param config.remote - Optional field, default to false, when true disables local
|
|
7
|
+
* sorting and every sort action call will now trigger a loadEntities action and the backend
|
|
8
|
+
* should sort the data, use selectSort in the effect that call backend to get the requested sort,
|
|
9
|
+
* when false all sorting is done in memory when the sort action is fired
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* // The following trait config
|
|
13
|
+
* export interface TestState
|
|
14
|
+
* extends EntityAndStatusState<Todo>, SortState<Todo>{}
|
|
15
|
+
*
|
|
16
|
+
* const traits = createEntityFeatureFactory(
|
|
17
|
+
* addLoadEntitiesTrait<Todo>(),
|
|
18
|
+
* addSortEntitiesTrait<Todo>({
|
|
19
|
+
* defaultSort: {active:'id', direction:'asc'}
|
|
20
|
+
* })
|
|
21
|
+
* )({
|
|
22
|
+
* actionsGroupKey: '[Todos]',
|
|
23
|
+
* featureSelector: createFeatureSelector<TestState>>(
|
|
24
|
+
* 'todos',
|
|
25
|
+
* ),
|
|
26
|
+
* });
|
|
27
|
+
* // will generate the following actions and selectors, plus the ones generated by other traits
|
|
28
|
+
* traits.actions.sortTodos({active:'id', direction:'desc'})
|
|
29
|
+
* traits.actions.resetTodosSort()
|
|
30
|
+
*
|
|
31
|
+
* traits.selectors.selectTodosSort()
|
|
32
|
+
*/
|
|
33
|
+
export declare function addSortEntitiesTrait<Entity>({ remote, defaultSort, }: SortEntitiesConfig<Entity>): import("@ngrx-traits/core").TraitFactory<import("../load-entities/load-entities.model").LoadEntitiesState<Entity> & import("./sort-entities.model").SortEntitiesState<Entity>, SortEntitiesActions<Entity>, SortEntitiesSelectors<Entity>, import("./sort-entities.model").SortEntitiesMutators<Entity>, "sort", SortEntitiesConfig<Entity>, import("@ngrx-traits/core").AllTraitConfigs>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TraitEffect } from '@ngrx-traits/core';
|
|
2
|
+
import { Type } from '@ngrx-traits/core';
|
|
3
|
+
import { LoadEntitiesActions, LoadEntitiesKeyedConfig } from '../load-entities/load-entities.model';
|
|
4
|
+
import { SortEntitiesActions, SortEntitiesKeyedConfig } from './sort-entities.model';
|
|
5
|
+
import { EntitiesPaginationActions } from '../entities-pagination/entities-pagination.model';
|
|
6
|
+
export declare function createSortTraitEffect<Entity>(allActions: LoadEntitiesActions<Entity> & SortEntitiesActions<Entity> & EntitiesPaginationActions, allConfigs: LoadEntitiesKeyedConfig<Entity> & SortEntitiesKeyedConfig<Entity>): Type<TraitEffect>[];
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { LoadEntitiesKeyedConfig, LoadEntitiesSelectors } from '../load-entities/load-entities.model';
|
|
2
|
+
import { SortEntitiesMutators } from './sort-entities.model';
|
|
3
|
+
export declare function createSortTraitMutators<Entity>({ selectEntitiesList }: LoadEntitiesSelectors<Entity>, allConfigs: LoadEntitiesKeyedConfig<Entity>): SortEntitiesMutators<Entity>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { LoadEntitiesActions, LoadEntitiesKeyedConfig, LoadEntitiesState } from '../load-entities';
|
|
2
|
+
import { SortEntitiesActions, SortEntitiesKeyedConfig, SortEntitiesMutators, SortEntitiesState } from './sort-entities.model';
|
|
3
|
+
export declare function createSortInitialState<Entity>(previousInitialState: any, allConfigs: SortEntitiesKeyedConfig<Entity>): LoadEntitiesState<Entity> & SortEntitiesState<Entity>;
|
|
4
|
+
export declare function createSortTraitReducer<Entity, S extends LoadEntitiesState<Entity> & SortEntitiesState<Entity> = LoadEntitiesState<Entity> & SortEntitiesState<Entity>>(initialState: S, allActions: SortEntitiesActions<Entity> & LoadEntitiesActions<Entity>, allMutators: SortEntitiesMutators<Entity>, allConfigs: LoadEntitiesKeyedConfig<Entity> & SortEntitiesKeyedConfig<Entity>): import("@ngrx/store").ActionReducer<S, import("@ngrx/store").Action>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Sort } from './sort-entities.model';
|
|
2
|
+
export declare function _isNumberValue(value: any): boolean;
|
|
3
|
+
/**
|
|
4
|
+
* Gets a sorted copy of the data array based on the state of the Sort.
|
|
5
|
+
* @param data The array of data that should be sorted.
|
|
6
|
+
* @param sort The connected MatSort that holds the current sort state.
|
|
7
|
+
*/
|
|
8
|
+
export declare function sortData<T>(data: T[], sort: Sort<T>): T[];
|