Skip to content
Snippets Groups Projects
Commit 348607d5 authored by Pierre-Jean CHANCELLIER's avatar Pierre-Jean CHANCELLIER
Browse files

cache customisation for apollo

parent 6104bc35
No related branches found
No related tags found
No related merge requests found
...@@ -16,7 +16,19 @@ export default ctx => { ...@@ -16,7 +16,19 @@ export default ctx => {
}) })
const link = from([ssrMiddleware, httpLink]) const link = from([ssrMiddleware, httpLink])
const cache = new InMemoryCache({addTypename:false}) const cache = new InMemoryCache({
typePolicies: {
Event: {
keyFields: ['block',['bct']]
},
EventId: {
keyFields: ['member',['hash'],'inOut']
},
Identity: {
keyFields: ['hash']
}
}
})
return { return {
link, link,
......
...@@ -45,7 +45,7 @@ export default { ...@@ -45,7 +45,7 @@ export default {
query: gql`query LastEvents($start: Int64, $end: Int64) { query: gql`query LastEvents($start: Int64, $end: Int64) {
membersCount(start: $start, end: $end) { membersCount(start: $start, end: $end) {
idList { idList {
id { member : id {
pubkey pubkey
uid uid
status status
...@@ -56,23 +56,29 @@ export default { ...@@ -56,23 +56,29 @@ export default {
} }
} }
inOut inOut
},
block {
bct
} }
} }
} `, } `,
variables(){return {start:today-86400*2,end:today}}, variables(){return {start:today-86400*2,end:today}},
update (data) { update (data) {
console.log(data)
let result = {'entrees':[],'sorties':[]} let result = {'entrees':[],'sorties':[]}
for (let i = 0; i < data.membersCount.length; i++) { for (let i = 0; i < data.membersCount.length; i++) {
let member = data.membersCount[i].idList[0] for (let j =0; j < data.membersCount[i].idList.length; j++) {
member.id.inOut = member.inOut let member = data.membersCount[i].idList[j]
member.member.inOut = member.inOut
if (member.inOut || member.id.status=='MEMBER') { if (member.inOut || member.member.status=='MEMBER') {
if (result['entrees'].filter(function(e) { return e.hash === member.id.hash; }).length == 0) { if (result['entrees'].filter(function(e) { return e.hash === member.member.hash; }).length == 0) {
result['entrees'].push(member.id) result['entrees'].push(member.member)
}
} else {
result['sorties'].push(member.member)
} }
} else {
result['sorties'].push(member.id)
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment