diff --git a/client/src/pages/module.vue b/client/src/pages/module.vue index 624221de..24ea8271 100644 --- a/client/src/pages/module.vue +++ b/client/src/pages/module.vue @@ -6,6 +6,10 @@ import Module from '@/components/Module.vue'; import MODULE_DETAILS_QUERY from '@/graphql/gql/moduleDetailsQuery.gql'; + function mapNodes(connection, fn) { + return connection.edges.map(({node}) => fn(node)); + } + export default { apollo: { moduleQuery: { @@ -20,10 +24,10 @@ const node = data.modules.edges[0].node; this.module = { ...node, - objectiveGroups: node.objectivegroupSet.edges.map(edge => { + objectiveGroups: mapNodes(node.objectivegroupSet, node => { return { - ...edge.node, - objectives: edge.node.objectiveSet.edges.map(edge => edge.node) + ...node, + objectives: mapNodes(node.objectiveSet, node => node) }; }) };