mirror of
https://github.com/microsoft/frontend-bootcamp.git
synced 2026-01-26 14:56:42 +08:00
20 lines
410 B
TypeScript
20 lines
410 B
TypeScript
import { Store } from '../store';
|
|
import { addTodo, remove, complete } from './pureFunctions';
|
|
|
|
let index = 0;
|
|
|
|
export function reducer(state: Store, payload: any): Store {
|
|
switch (payload.type) {
|
|
case 'addTodo':
|
|
return addTodo(state, payload.label);
|
|
|
|
case 'remove':
|
|
return remove(state, payload.id);
|
|
|
|
case 'complete':
|
|
return complete(state, payload.id);
|
|
}
|
|
|
|
return state;
|
|
}
|