Update some more code to not change immutable objects

This commit is contained in:
Ramon Wenger 2022-01-26 22:43:27 +01:00
parent 6ce00694d7
commit 71ed5931c7
2 changed files with 17 additions and 9 deletions

View File

@ -45,11 +45,16 @@
completeOnboarding() {
this.$apollo.mutate({
mutation: UPDATE_ONBOARDING_PROGRESS,
update(store, {data: {updateOnboardingProgress: {success}}}) {
update(store, {data: {updateOnboardingProgress: {success: onboardingVisited}}}) {
const query = ME_QUERY;
const data = store.readQuery({query});
if (data) {
data.me.onboardingVisited = success;
const {me} = store.readQuery({query});
if (me) {
const data = {
me: {
...me,
onboardingVisited
}
};
store.writeQuery({query, data});
}
},
@ -62,8 +67,7 @@
</script>
<style lang="scss">
@import "@/styles/_variables.scss";
@import "@/styles/_mixins.scss";
@import "~styles/helpers";
.onboarding {
background-color: $color-brand;

View File

@ -37,9 +37,13 @@
},
update: (store, {data: {addProject: {project}}}) => {
try {
const data = store.readQuery({query: PROJECTS_QUERY});
if (data.projects) {
data.projects.unshift(project);
const {projects} = store.readQuery({query: PROJECTS_QUERY});
if (projects) {
const expandedProjects = [
project,
...projects
];
const data = {projects:expandedProjects};
store.writeQuery({query: PROJECTS_QUERY, data});
}
} catch (e) {