@@ -92,10 +92,11 @@ import { MemberRole } from "@/types/enums";
|
||||
import RouteName from "../../router/name";
|
||||
import { convertToUsername } from "../../utils/username";
|
||||
import PictureUpload from "../../components/PictureUpload.vue";
|
||||
import { ErrorResponse } from "apollo-link-error";
|
||||
import { ServerParseError } from "apollo-link-http-common";
|
||||
import { CONFIG } from "@/graphql/config";
|
||||
import { IConfig } from "@/types/config.model";
|
||||
import { ErrorResponse } from "@apollo/client/link/error";
|
||||
import { ServerParseError } from "@apollo/client/link/http";
|
||||
import { ApolloCache, FetchResult, InMemoryCache } from "@apollo/client/core";
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
@@ -129,7 +130,7 @@ export default class CreateGroup extends mixins(IdentityEditionMixin) {
|
||||
await this.$apollo.mutate({
|
||||
mutation: CREATE_GROUP,
|
||||
variables: this.buildVariables(),
|
||||
update: (store, { data: { createGroup } }) => {
|
||||
update: (store: ApolloCache<InMemoryCache>, { data }: FetchResult) => {
|
||||
const query = {
|
||||
query: PERSON_MEMBERSHIPS,
|
||||
variables: {
|
||||
@@ -140,7 +141,7 @@ export default class CreateGroup extends mixins(IdentityEditionMixin) {
|
||||
if (!membershipData) return;
|
||||
const { person } = membershipData;
|
||||
person.memberships.elements.push({
|
||||
parent: createGroup,
|
||||
parent: data?.createGroup,
|
||||
role: MemberRole.ADMINISTRATOR,
|
||||
actor: this.currentActor,
|
||||
insertedAt: new Date().toString(),
|
||||
|
||||
@@ -209,17 +209,6 @@ export default class GroupFollowers extends mixins(GroupMixin) {
|
||||
approved: !pending,
|
||||
};
|
||||
},
|
||||
// Transform the previous result with new data
|
||||
updateQuery: (previousResult, { fetchMoreResult }) => {
|
||||
if (!fetchMoreResult) return previousResult;
|
||||
const oldFollowers = previousResult.group.followers;
|
||||
const newFollowers = fetchMoreResult.group.followers;
|
||||
return {
|
||||
elements: [...oldFollowers.elements, ...newFollowers.elements],
|
||||
total: newFollowers.total,
|
||||
__typename: oldFollowers.__typename,
|
||||
};
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -360,17 +360,6 @@ export default class GroupMembers extends mixins(GroupMixin) {
|
||||
roles,
|
||||
};
|
||||
},
|
||||
// Transform the previous result with new data
|
||||
updateQuery: (previousResult, { fetchMoreResult }) => {
|
||||
if (!fetchMoreResult) return previousResult;
|
||||
const oldMembers = previousResult.group.members;
|
||||
const newMembers = fetchMoreResult.group.members;
|
||||
return {
|
||||
elements: [...oldMembers.elements, ...newMembers.elements],
|
||||
total: newMembers.total,
|
||||
__typename: oldMembers.__typename,
|
||||
};
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -184,8 +184,8 @@ import { IGroup, usernameWithDomain } from "../../types/actor";
|
||||
import { Address, IAddress } from "../../types/address.model";
|
||||
import { CONFIG } from "@/graphql/config";
|
||||
import { IConfig } from "@/types/config.model";
|
||||
import { ErrorResponse } from "apollo-link-error";
|
||||
import { ServerParseError } from "apollo-link-http-common";
|
||||
import { ServerParseError } from "@apollo/client/link/http";
|
||||
import { ErrorResponse } from "@apollo/client/link/error";
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
|
||||
@@ -325,24 +325,6 @@ export default class Timeline extends Vue {
|
||||
page: this.page,
|
||||
limit: PAGINATION_LIMIT,
|
||||
},
|
||||
updateQuery: (previousResult, { fetchMoreResult }) => {
|
||||
if (!fetchMoreResult) return previousResult;
|
||||
const newActivities = fetchMoreResult.group.activity.elements;
|
||||
const newTotal = fetchMoreResult.group.activity.total;
|
||||
return {
|
||||
group: {
|
||||
...previousResult.group,
|
||||
activity: {
|
||||
__typename: previousResult.group.activity.__typename,
|
||||
total: newTotal,
|
||||
elements: [
|
||||
...previousResult.group.activity.elements,
|
||||
...newActivities,
|
||||
],
|
||||
},
|
||||
},
|
||||
};
|
||||
},
|
||||
});
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
|
||||
Reference in New Issue
Block a user