chore(schema): add delete multiple

This commit is contained in:
Johannes Millan 2019-05-21 19:49:53 +02:00
parent 5e13c2f53a
commit 909bf038fc
3 changed files with 17 additions and 0 deletions

View file

@ -55,6 +55,10 @@ export class <%= classify(name)%>Service {
this._store$.dispatch(new Delete<%= classify(name)%>({id}));
}
delete<%= classify(name)%>s(ids: string[]) {
this._store$.dispatch(new Delete<%= classify(name)%>s({ids}));
}
update<%= classify(name)%>(id: string, changes: Partial<<%= classify(name)%>>) {
this._store$.dispatch(new Update<%= classify(name)%>({<%= camelize(name)%>: {id, changes}}));
}

View file

@ -8,6 +8,7 @@ export enum <%= classify(name)%>ActionTypes {
Update<%= classify(name)%> = '[<%= classify(name)%>] Update <%= classify(name)%>',
Upsert<%= classify(name)%> = '[<%= classify(name)%>] Upsert <%= classify(name)%>',
Delete<%= classify(name)%> = '[<%= classify(name)%>] Delete <%= classify(name)%>',
Delete<%= classify(name)%>s = '[<%= classify(name)%>] Delete multiple <%= classify(name)%>s',
}
export class Load<%= classify(name)%>State implements Action {
@ -45,6 +46,13 @@ export class Delete<%= classify(name)%> implements Action {
}
}
export class Delete<%= classify(name)%>s implements Action {
readonly type = <%= classify(name)%>ActionTypes.Delete<%= classify(name)%>s;
constructor(public payload: { ids: string[] }) {
}
}
export type <%= classify(name)%>Actions =
Load<%= classify(name)%>State
@ -52,4 +60,5 @@ export type <%= classify(name)%>Actions =
| Update<%= classify(name)%>
| Upsert<%= classify(name)%>
| Delete<%= classify(name)%>
| Delete<%= classify(name)%>s
;

View file

@ -41,6 +41,10 @@ export function <%= camelize(name) %>Reducer(
return adapter.removeOne(action.payload.id, state);
}
case <%= classify(name)%>ActionTypes.Delete<%= classify(name)%>s: {
return adapter.removeMany(action.payload.ids, state);
}
case <%= classify(name)%>ActionTypes.Load<%= classify(name)%>State:
return {...action.payload.state};