Guest User

Untitled

a guest
Mar 19th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. /*
  2. * Turns object of type:
  3. * {
  4. * user: true,
  5. * interests: {
  6. * sports: true,
  7. * tv: true,
  8. * }
  9. * }
  10. * into an object of style:
  11. * {
  12. * user: { data: undefined, status: undefined },
  13. * interests: {
  14. * sports: { data: undefined, status: undefined },
  15. * tv: { data: undefined, status: undefined },
  16. * }
  17. * }
  18. */
  19.  
  20. export function generateInitialData(stateStructure) {
  21. return Object.keys(stateStructure).reduce((state, key) => {
  22. // Check if an object exists at that key
  23. if (typeof stateStructure[key] === 'object') {
  24. // if so recurse on that object
  25. state[key] = generateInitialData(stateStructure[key]);
  26. } else {
  27. // otherwise place data at that point
  28. state[key] = { data: undefined, status: undefined };
  29. }
  30. return state;
  31. }, {});
  32. }
Add Comment
Please, Sign In to add comment