Enabled pagination on network page.

This commit is contained in:
2020-05-26 04:11:29 +02:00
parent fe69ec4175
commit 86377fec5f
43 changed files with 164 additions and 81 deletions

View File

@@ -57,6 +57,10 @@ function curateActor(actor, release, curateActorRelease) {
curatedActor.releases = actor.releases.map(actorRelease => curateActorRelease(actorRelease.release));
}
if (actor.aliasFor) {
curatedActor.aliasFor = curateActor(curatedActor.aliasFor);
}
return curatedActor;
}

View File

@@ -12,7 +12,7 @@ function initNetworksActions(store, _router) {
}) {
const { before, after, orderBy } = getDateRange(range);
const { network, releases } = await graphql(`
const { network, connection: { releases, totalCount } } = await graphql(`
query Network(
$networkSlug: String!
$limit:Int = 10,
@@ -71,47 +71,50 @@ function initNetworksActions(store, _router) {
url
}
}
releases(
first: $limit
connection: releasesConnection(
first: $limit
offset: $offset
orderBy: $orderBy
filter: {
site: {
or: [
{ network: { slug: { equalTo: $networkSlug } } },
{ network: { parent: { slug: { equalTo: $networkSlug } } } }
]
}
or: [
{
date: {
lessThan: $before,
greaterThan: $after
}
},
{
date: {
isNull: true
},
createdAt: {
lessThan: $beforeTime,
greaterThan: $afterTime,
}
}
]
releasesTagsConnection: {
none: {
tag: {
slug: {
in: $exclude
}
}
}
}
}
) {
${releaseFields}
}
orderBy: $orderBy
filter: {
site: {
or: [
{ network: { slug: { equalTo: $networkSlug } } },
{ network: { parent: { slug: { equalTo: $networkSlug } } } }
]
}
or: [
{
date: {
lessThan: $before,
greaterThan: $after
}
},
{
date: {
isNull: true
},
createdAt: {
lessThan: $beforeTime,
greaterThan: $afterTime,
}
}
]
releasesTagsConnection: {
none: {
tag: {
slug: {
in: $exclude
}
}
}
}
}
) {
releases: nodes {
${releaseFields}
}
totalCount
}
}
`, {
networkSlug,
@@ -125,7 +128,10 @@ function initNetworksActions(store, _router) {
exclude: store.state.ui.filter,
});
return curateNetwork(network, releases);
return {
network: curateNetwork(network, releases),
totalCount,
};
}
async function fetchNetworks({ _commit }) {

View File

@@ -101,11 +101,12 @@ const routes = [
params: {
...from.params,
range: 'latest',
pageNumber: 1,
},
}),
},
{
path: '/network/:networkSlug/:range',
path: '/network/:networkSlug/:range/:pageNumber?',
component: Network,
name: 'networkRange',
},

View File

@@ -92,14 +92,18 @@ function initUiActions(_store, _router) {
name
slug
age
ageAtDeath
dateOfBirth
dateOfDeath
gender
aliasFor: actorByAliasFor {
id
name
slug
age
ageAtDeath
dateOfBirth
dateOfDeath
gender
network {
id